Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan,...

175
Linqiang Pan, Gheorghe P˘ aun, eds. Pre-proceedings of the International Conference Bio-Inspired Computing – Theory and Applications BIC-TA 2006 Membrane Computing Section Wuhan, China September 18–22, 2006

Transcript of Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan,...

Page 1: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Linqiang Pan, Gheorghe Paun, eds.

Pre-proceedings of the International Conference

Bio-Inspired Computing – Theory and Applications

BIC-TA 2006

Membrane Computing Section

Wuhan, China

September 18–22, 2006

Page 2: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 3: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Preface

This is the first edition of the international conference Bio-Inspired Com-puting – Theory and Applications (BIC-TA 2006), held in Wuhan, China, fromSeptember 18 to September 22, 2006. The goal is to bring together researchersworking in the main areas of natural computing inspired from biology, for pre-senting their recent results, exchanging ideas and cooperating in a friendly frame-work.

The conference had four sections: Evolutionary Computing, Neural Comput-ing, DNA Computing, and Membrane Computing, each section with its programcommittee and separate pre-proceedings volume.

This volume contains both the two invited talks and the fifteen acceptedpapers for the Membrane Computing section of BIC-TA 2006. Besides these pa-pers and the invited talks, a tutorial was organized in the Membrane Computingsection, delivered by Gheorghe Paun.

The program committee of the Membrane Computing section consisted ofGabriel Ciobanu (Iasi, Romania), Rudolf Freund (Vienna, Austria), Oscar H.Ibarra (Santa Barbara, USA), Kamala Krithivasan (Madras, India), GiancarloMauri (Milan, Italy), Gheorghe Paun (Bucharest, Romania, and Sevilla, Spain– Chair), and Mario J. Perez-Jimenez (Sevilla, Spain). There were received 21submissions, and out of them were accepted the 15 papers included in this vol-ume; each paper was subject of two referee reports. Still, this volume should beseen as a working material, with the papers to be further improved according tothe discussions to be held during the presentations.

A selection of these papers, additionally refereed, will be considered for pub-lication in an international journal. References about the possible new versionsof the papers can be found through the web site of membrane computing, athttp://psystems.disco.unimib.it.

Linqiang PanGheorghe Paun

(July 2006)

Page 4: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

BIC-TA 2006 Organization

BIC-TA 2006 was organized and sponsored by the Huazhong University of Sci-ence and Technology, Wuhan, China and Zhengzhou University of Light Indus-try, Zhengzhou, China, and as well as sponsored by National Natural ScienceFoundation of China.

CommitteesGeneral Chairs:Gheorghe Paun (Bucharest, Romania, and Seville, Spain),Jin Xu (Wuhan, China), Shoujue Wang (Beijing, China)

Advisory Committee:Yanda Li (Beijing, China), Qi Fei (Wuhan, China),Yingluo Wang (Xi’an, China), Yongchuan Zhang (Wuhan, China)

Organizing Committee:Linqiang Pan (Wuhan, China) – Chair, Guangzhao Cui (Zhengzhou,China)–Co-chair, Xiangrong Liu (Wuhan, China) – Secretary, Yongsheng Ding (Shang-hai, China), Ke Liu (Beijing, China), Dazhi Meng (Beijing, China), Yi Shen(Wuhan,China), Xiaolong Shi (Wuhan, China), Hongwei Wang (Wuhan, China),Zheng Zhang (Wuhan, China), Guoan Zhang (Wuhan, China)

Section Program Committees:– Evolutionary Computing:Dan Dumitrescu (Cluj-Napoca, Romania) – Chair, Ajith Abraham (Seoul, Ko-rea), Kalyanmanoy Deb (Kanpur, India), Lishan Kang (Wuhan, China), Zbieg-niev Michalewicz (Adelaide, Australia), Jose Luis Verdegay (Granada, Spain),Xufa Wang (Hefei, China),–Neural Computing:Huaxiang Lu (Beijing, China) – Chair, Wenming Cao (Hangzhou, China), PengjunWang(Ningbo, China), Shoujue Wang (Beijing, China), Guowei Yang(Qingdao,China), Mingsheng Zhao(Beijing, China)– DNA Computing:Masami Hagiya (Tokyo, Japan) – Chair, Junghuei Chen (Delaware, USA), ChengdeMao (West Lafayette, USA), Yongli Mi (Hong Kong, China), Masayuki Yama-mura (Tokyo, Japan), Byoung-Tak Zhang (Seoul, Korea), Zhizhou Zhang (Tian-jin, China)– Membrane Computing:Gheorghe Paun (Bucharest, Romania and Sevilla, Spain) – Chair, Gabriel Ciobanu(Iasi, Romania), Rudolf Freund (Vienna, Austria), Oscar H. Ibarra (Santa Bar-bara, USA), Kamala Krithivasan (Madras, India), Giancarlo Mauri (Milano,Italy), Mario J. Perez-Jimenez (Seville, Spain)

Page 5: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

CONTENTS

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Invited Lectures

M. Gheorghe:P systems – A new computational approach in systems biology . . . . . . . . . . . 7

V. Manca:Metabolic P systems for biomolecular dynamics . . . . . . . . . . . . . . . . . . . . . . . . . 15

Regular Papers

D. Besozzi, P. Cazzaniga, D. Pescini, G. Mauri:Seasonal variance in P system models for metapopulations . . . . . . . . . . . . . . . 27

A. Binder, R. Freund, G. Lojka, M. Oswald:Applications of membrane systems in distributed systems . . . . . . . . . . . . . . . . 37

C. Bonchis, C. Isbasa, G. Ciobanu:Compositional asynchronous membrane systems . . . . . . . . . . . . . . . . . . . . . . . . . 51

H. Chen, T.-O. Ishdorj, Gh. Paun:Computing along the axon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

S. Cheruku, A. Paun, F.J. Romero-Campero,M.J. Perez-Jimenez, O.H. Ibarra:Simulating FAS-induced apoptosis by using P systems . . . . . . . . . . . . . . . . . . . 71

G. Ciobanu, L. Cornacel:Probabilistic transitions for P systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

R. Freund, M. Oswald, T. Schirk:How a membrane agent buys goods in a membrane store . . . . . . . . . . . . . . . . . 93

M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez,A. Riscos-Nunez, F.J. Romero-Campero:A membrane computing view on tumours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Page 6: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

6

L. Huang, X.-X. He, N. Wang, Y. Xie:P systems based multi-objective optimization algorithm . . . . . . . . . . . . . . . . . 113

W. Korczynski:Paun’s systems as models of economic systems . . . . . . . . . . . . . . . . . . . . . . . . . 124

S.N. Krishna:Combining brane calculus and membrane computing . . . . . . . . . . . . . . . . . . . 131

A. Leporati, C. Zandron, G. Mauri:Solving the factorization problem with P systems . . . . . . . . . . . . . . . . . . . . . . . 144

H. Long, Y. Fu:Building combinational P automata with rewritingand active membrane rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

K.G. Subramanian, R. Saravanan, M. Geethalakshmi,P. Helen Chandra, M. Margenstern:P systems with array objects and array rewriting rules . . . . . . . . . . . . . . . . . 160

Xian Xu:Tissue P systems with parallel rules on channels . . . . . . . . . . . . . . . . . . . . . . . . 168

Page 7: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems – A New Computational Approach in SystemsBiology

Marian Gheorghe

Department of Computer Science, The University of SheffieldRegent Court, Portobello Street, Sheffield S1 4DP, UK

Email: [email protected]

1 Introduction

The complexity of biomolecular cell systems is currently the focus of intensive experimental research,nevertheless the enormous amount of data about the function, activity, and interactions of such sys-tems makes necessary the development of models able to provide a better understanding of the dy-namics and properties of the systems. A model, an abstraction of the real-world onto a mathemati-cal/computational domain, highlights some key features while ignoring others that are assumed to benot relevant. A good model should have four properties: relevance, computability, understandabilityand extensibility, [23]. A model must be relevant capturing the essential properties of the phenomenoninvestigated; and computable so it can allow the simulation of its dynamic behavior, and the quali-tative and quantitative reasoning about its properties. An understandable model will correspond wellto the informal concepts and ideas of molecular biology. Finally, a good model should be extensibleto higher levels of organizations, like tissues, organs, organism, etc, in which molecular systems playa key role.

In this paper we will deal with models developed within the framework of membrane computing.Membrane computing is an emergent branch of natural computing introduced by G. Paun in [15].This new model of computation starts from the assumption that the processes taking place in thecompartmental structure of a living cell can be interpreted as computations. The devices of this modelare called P systems. Roughly speaking, a P system consists of a cell-like membrane structure, in thecompartments of which one places multisets of objects which evolve according to given rules.

Although most research in P systems concentrates on the computational power of the devices in-volved or on solving NP complete problems, lately they have been used to model biological phenomenawithin the framework of computational systems biology or to describe artificial life processes. In thesecases P systems are not used as a nature inspired computing paradigm, but rather as a formalism fordescribing the behavior of the biological or artificial systems. In this respect several P systems modelshave been proposed to describe oscillatory systems [9], signal transduction [20], gene regulation con-trol [19], quorum sensing [13, 21, 24], metapopulations [22], self-assembly [3]. These models differ inthe type of the rewriting rules, membrane structure and the strategy applied to run the rules in thecompartments defined by membranes. Some of these models using metabolic algorithm [5], dynamicalprobabilistic P systems [22] and (multicompartmental) Gillespie Algorithm [20] were applied in certaincase studies.

As P systems are inspired from the structure and functioning of the living cell, it is natural toconsider them as modeling tools for biological systems, within the framework of systems biology, beingan alternative to more classical approaches like ordinary differential equations (ODEs) and to somerecent approaches like Petri nets and π-calculus. Differential equations have been used successfully tomodel kinetics of conventional macroscopic chemical reactions where the main focus is on the averageevolution of the concentration of chemical substances across the whole system. Nevertheless, there isan implicit assumption of continuously varying chemical concentration and deterministic dynamics.Two critical characteristics of this approach are that the number of molecules of each type in thereaction mix is large and that for each type of reaction in the system, the number of reactions is largewithin each observation interval, that is, reactions are fast.

When the number of particles of the reacting species is small and reactions are slow, which isfrequently the case in some biological systems, both of the previous assumptions are questionable and

Page 8: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

8 M. Gheorghe

the deterministic continuous approach to chemical kinetics should be complemented by an alternativeapproach. In this respect, one has to recognize that the individual chemical reaction steps occurdiscretely and are separated by time intervals of random length. Stochastic and discrete approacheslike the ones used with Petri nets [12], π-calculus [23] and P systems [20, 22] are more accurate in thissituation. Nevertheless, these formalisms differs in some essential features.

In this paper it is shown how P systems can model a basic well-know quorum sensing mechanismoccurring in Pseudomonas aeruginosa and how the specification may be then mapped into a certainmodel checker called PRISM (Probabilistic and Symbolic Model Checker) [27].

Quorum sensing is a particular form of cell-to-cell communication in bacteria which exploits theconcentration of a particular molecule, called signal, to “sense” the population density of the colony.The quorum sensing regulatory network is used by the individuals of the colony for collective synchro-nization and therefore for a coherent control over the gene expression. In Pseudomonas aeruginosathis mechanism is responsible for the effectiveness of the virulence of this bacterium [14, 25, 7, 6]. Infact, a single bacterium starts to express its virulence factors only when it senses that the bacteriapopulation has reached a certain threshold level such that the host response will be inadequate.

The activation of a complex cellular response is what distinguishes the quorum sensing as a com-munication regulatory circuit from other density dependent responses such as the metabolisation ordetoxification of small molecules.

The simplest quorum sensing network known in Gram-Negative bacteria is also the first one everdiscovered [26, 17]. It has been found in the Vibrio fischeri bacterium, also known as Photobacteriumfischeri and is nowadays considered as the paradigm of this cell communication process. In this networktwo proteins and one signalling molecule are involved. The R protein is a transcriptional regulator,while the I protein is the synthase for the signalling molecule, also referred to as the autoinducer. Animportant role is also played by the confinement of the bacterial colony. The fact that the autoinducermolecule is not dispersed in the environment allows its diffusion inside the individuals and thereforeits concentration sensing.

At low cell densities the I protein synthesizes the autoinducer at a basal rate and the signal freelydiffuses outside the bacterium. The concentration of the signal inside each bacterium is increased bythe combined effect of the confinement and the increase of the population. At this point, the binding ofthe R protein with the autoinducer becomes more likely. The binding of the signal molecules activatesthe R protein transcriptional regulator. Since the I gene is the target of the R protein, the bacteriumstarts to produce more and more signals. The regulation network signal autoinduces its transcription.In this way the high concentration of the autoinducer coordinates the transcription of all the genesthat are target of the R protein.

The quorum sensing in Pseudomonas aeruginosa is more complex, nevertheless intriguing, sincethis bacterium uses two different quorum sensing systems which interact each other.

A P system model [15, 16] of the bacterium Pseudomonas aeruginosa quorum sensing, focusing onthe communication mechanisms will be provided. The parameters of the model will be tuned using anevolutionary algorithm. Our long term aim is to reproduce the characteristic behavior of the quorumsensing in Pseudomonas aeruginosa, namely, the switch between two distinct stable steady solutions:the first describing the behavior of the non-quorated bacterium (i.e., with low levels of autoinducer),the second modeling its quorated behavior (i.e., the behavior obtained with high concentration ofthe autoinducer molecule). Once the model will be entirely defined several simulations with differentstrategies [5, 22, 20] will be run.

First of all, we address the modelling of the internal dynamics of one single bacterium, tuning itskinetic constants in a way ensuring its non-quorated behavior. At a later stage, we intend to exploitcompartmentalization of P systems to model a colony of bacteria each of them internally specifiedaccording to the same set of kinetic constants. In this respect we will extend the current model toa Population P systems approach [2] that has been already used to express some aspects of quorumsensing in bacterium Pseudomonas aeruginosa [24] and for self-assembly problems [3].

The first stage of our investigation is intended to describe the quorum sensing related network ofeach bacterium to capture its main features into a mechanistic model [1], in which the whole systemis described at biochemical level. The quorum sensing internal pathway of each bacterium is taken

Page 9: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems – A New Computational Approach in Systems Biology 9

from models discussed in [8, 6] and a graphical representation of all elements involved in it, as well assome relevant relationships between them, is depicted in Figure 1.

LasR

LasR

lasR lasI

LasI

3O

Vfr

rsaL

RsaL

Fig. 1. The Pseudomonas quorum sensing model analyzed here (from [6]). Note that double arrows denotereversible reactions, bold ones degradation processes and empty ones the inhibitory process.

According to this model, the quorum sensing pathway comprises two interconnected signallingcascades. The main elements involved in the first one are proteins LasR, RsaL, LasI (as well as thegenes involved in their production), the autoinducer molecule 3-oxo-C12-HSL and the active complexLasR-3-oxo-C12-HSL. The key elements of the second system are the proteins RhlR and RhlI (aswell as the genes involved in their production), the autoinducer molecule C4-HSL and the activecomplex RhlR-C4-HSL. The first one of the two signalling cascades is called las system because itwas shown to regulate the expression of LasB elastase. This pathway regulates other virulence factorssuch as LasA protease, exotoxin A, alkaline protease A as well as the expression of at least two genesof the xcp secretory pathway. The las pathway is positively controlled by GacA and Vfr whereas it isinhibited by RsaL that, in turn, is positively regulated by the active complex LasR-3-oxo-C12-HSLand whose role is to repress the transcription of the lasI gene.

The second signalling system involved in the model is named rhl system because it controls theexpression of rhamnolipid via the production of rhlAB operon. The autoinducer molecule in thiscase is C4-HSL and the active complex is RhlR-C4-HSL. It has been shown that this cascade isnecessary for the production of some virulence factors like LasB elastase and LasA protease, as wellas pyocyanin, cyanide and alkaline protease. For this reason this signalling system is also known asvsm (virulence secondary metabolites).

Although the corresponding autoinducing molecules are highly selective (and thus not interchange-able at all), several interconnections between the las and the rhl pathways of the quorum sensing inPseudomonas aeruginosa are known. One link between them has been already mentioned and it isconstituted by the LasB elastase, that needs both LasR-3-oxo-C12-HSL and RhlR-C4-HSL for itsproduction. More interestingly, the las system is at a higher level in the hierarchical regulatory cascade,in fact LasR-3-oxo-C12-HSL can activate the expression of the rhlR gene. In addition, the activecomplex LasR-3-oxo-C12-HSL can bind to RhlR preventing it to form the complex RhlR-C4-HSL.

2 A First P Systems Model

Several attempts to simulate quorum sensing in bacteria are present in P systems literature [4, 18],but, as far as we know, none of them deals with the Pseudomonas aeruginosa bacterium.

Page 10: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

10 M. Gheorghe

Formally, the Pseudomonas P System is

Π = (V, µ,w,R),

where:

– V = geneR, geneL,R, A, P, L, S, r, l, s is the alphabet;

– µ = [ ]0 is the membrane structure: since we address the single bacterium case, it consists of thecellular membrane only;

– w = geneR geneL is the initial configuration that comprises only LasR and LasI genes, thus isrepresented as the string;

– R = r1, · · · , r18 is the set of the rules:

r1 : geneR −→ geneR + rr2 : r −→ λr3 : r −→ r + Rr4 : P −→ P + rr5 : R + A −→ Pr6 : P −→ R + Ar7 : P −→ P + sr8 : s −→ λr9 : S −→ λr10 : s −→ s + Sr11 : P −→ P + lr12 : l −→ l + Lr13 : l −→ λr14 : geneL −→ geneL + lr15 : L −→ λr16 : L −→ L + Ar17 : A −→ λr18 : R −→ λ

Each one of the rules in R is directly obtained from the differential description of the consideredquorum sensing model. For example, the rule r1 models the basal production of the LasR mRNA,while rule r2 expresses its degradation, moreover rules r5 and r6 describe the reversible reaction ofthe complex P formation by starting from its fundamental constituents R and A.

Due to the different level of abstraction in the representation of different parts of the model (as inthe case of the Michaelis-Menten-like kinetics that are modeled with a higher level of abstraction thanother components of the system), we can not directly apply mechanistic algorithms to this model.For this reason, we will apply to this set of rules only the strategy known as Metabolic Algorithm (fordetails refer to [5]).

The metabolic algorithm simulation needs to specify a set of reaction maps, each one associatedin a one-to-one manner to the rules of R. Reaction maps [5] are functions defined over the state of thesystem (i.e., multiplicity or concentration of all elements of the system depending on the case), thatare used by the Metabolic algorithm to allocate objects to rules. For example, as we will see shortly,Fr1 , that is the reaction map of rule r1, is simply the constant rate of production of LasR mRNA.We can have more complicated reaction maps, as in the case of rule r4 that takes into account theMichaelis-Menten-like production of the LasR mRNA elicited by the LasR-3oxo-C12-HSL complex.As in the case of the rules, that specify the physical interactions and connections between the elementsof the modeled reality, we can obtain this information from the differential equation formulation. The

Page 11: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems – A New Computational Approach in Systems Biology 11

set of reaction maps employed in our simulations are the following:

Fr1 = r0 Fr2 = kr

Fr3 = k1 Fr4 = Vr

Kr+P

Fr5 = kRA Fr6 = kP

Fr7 = Vs

Ks+P Fr8 = ks

Fr9 = k4 Fr10 = kS

Fr11 = Vl

(Kl+P )·(KS+S) Fr12 = k3

Fr13 = kl Fr14 = l0Fr15 = kL Fr16 = k2

Fr17 = kA Fr18 = kR

(1)

Note that all reaction maps are constant apart from three of them. We have already discussed themeaning of the reaction map associated to rule r4; analogous considerations hold for Fr7 as well. Moreinteresting is the reaction map associated to rule r11 that takes into account the inhibitory effect ofRsaL protein on the production of the lasI mRNA.

Remarkably, the method allows the current description of different parts of the system at differentabstraction levels; moreover, it is still applicable if all reaction maps are constant, a condition requiredby mechanistic algorithms.

3 Towards a Detailed P Systems Model

Although the preliminary P system model described in Ssection 2 showed that we can obtain com-parable results with the current models presented so far, our intention is to refine the model definedabove in order to allow the simulation of its dynamics by means of mechanistic methods like Gille-spie’s approach [10, 11], Dynamical Probabilistic P Systems algorithm [22] or the Multi-compartmentalGillespie [21]. In addition, in some cases, this model is not very biologically accurate. For example, inthe case of rsaL mRNA production, when different from other mRNAs productions, it does not showany basal rate production. Moreover, it does not consider the binding of the transcription factor tothe appropriate gene site necessary to start the transcription process of the DNA into the mRNA.

The formal description of the detailed P system model of Pseudomonas quorum sensing is thefollowing:

Π = (V, µ,w,R),

where:

– V = Vfr, lasR, Vfr.lasR, mlasR,LasR, 3OHSL, LasR.3OHSL,LasR.30HSL.lasR, lasI, LasR.30HSL.lasI,mlasI, LasI,rsaL, LasR.3OHSL.rsaL, mrsaL, RsaL,RsaL.lasI is the alphabet;

– µ = [ ]0 is the membrane structure: since we address the single bacterium case, it contains thecellular membrane only;

– w = Vfrn lasR lasI rsaL is the initial configuration that comprises only the three genes andthe protein Vfr that is needed to initiate the transcription and should be initialized with a highamount n ∈ N;

– R = r1, · · · , r28 is the set of the rules:

Page 12: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

12 M. Gheorghe

r1 : Vfr + lasRk1−→ Vfr.lasR + Vfr

r2 : Vfr.lasRk2−→ lasR

r3 : Vfr.lasRk3−→ Vfr.lasR + mlasR

r4 : mlasRk4−→ λ

r5 : mlasRk5−→ LasR + mlasR

r6 : LasRk6−→ λ

r7 : LasR + 3OHSLk7−→ LasR.3OHSL

r8 : LasR.3OHSLk8−→ LasR + 3OHSL

r9 : 3OHSLk9−→ λ

r10 : LasR.3OHSL + lasRk10−→ LasR.3OHSL.lasR

r11 : LasR.3OHSL.lasRk11−→ LasR.3OHSL + lasR

r12 : LasR.3OHSL.lasRk12−→ LasR.3OHSL.lasR + mlasR

r13 : LasR.3OHSL + lasIk13−→ LasR.3OHSL.lasI

r14 : LasR.3OHSL.lasIk14−→ LasR.3OHSL + lasI

r15 : LasR.3OHSL.lasIk15−→ LasR.3OHSL.lasI + mlasI

r16 : mlasIk16−→ λ

r17 : mlasIk17−→ LasI + mlasI

r18 : LasIk18−→ λ

r19 : LasIk19−→ LasI + 3OHSL

r20 : LasR.3OHSL + rsaLk20−→ LasR.3OHSL.rsaL

r21 : LasR.3OHSL.rsaLk21−→ LasR.3OHSL + rsaL

r22 : LasR.3OHSL.rsaLk22−→ LasR.3OHSL.rsaL + mrsaL

r23 : mrsaLk23−→ λ

r24 : mrsaLk24−→ RsaL + mrsaL

r25 : RsaLk25−→ λ

r26 : RsaL + lasIk26−→ RsaL.lasI

r27 : RsaL.lasIk27−→ RsaL + lasI

r28 : RsaL.lasIk28−→ RsaL.lasI + mlasI

where ki, for i = 1, · · · , 28, is the rate constant associated with the ith rule.This system is depicted in Figure 2 where numbers next to arrows refer to the corresponding rules.

Note that arrows with two numbers denote reversible reactions modeled in the P system descriptionwith two distinct rules.

To give some ideas on how the model has been built we explain in detail the process that, startingfrom the lasI gene, leads to the formation of the complex LasR.3OHSL, the remaining part of themodel follows a similar derivation. The production of LasI mRNA (mlasI) can be done in two waysdepending on the transcription factor bound to the lasI gene. In fact, when LasR.3OHSL binds tothe gene lasI (rule r13), it activates the transcription of lasI gene into mlasI mRNA (rule r15) witha rate k15. The RsaL protein can bind to the lasI gene as well (rule r26), but in this case, the sametranscription (modeled by rule r28) has different rate k28. Since the biology of the process tells usthat RsaL protein inhibits the mRNA production, we add the constraint that k28 ¿ k15. The mlasImRNA can either be degraded (rule r16) or be translated into the LasI protein (rule r17). The lattercan in turn be degraded (rule r18) or it can produce the autoinducer molecule 3OHSL (rule r19), thatcan bind to the LasR protein and form the complex LasR.3OHSL (rule r7) or be degraded (rule r9).

Page 13: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems – A New Computational Approach in Systems Biology 13

LasR

LasR

rsaL

mrlasL

RsaL

lasR

mlasR

lasI

LasI

mlasI

3O

Vfr

1

2

3

5

6

4

7

8

9

117

8

12

13

14

15

16

18

19

17

20

21

22

2324

25

26

27

2810

Fig. 2. The Pseudomonas quorum sensing detailed model analyzed here. The number next to each arrow refersto the corresponding P system rule.

As far as we know, no value for the kinetic constant necessary for the simulation of this dynamicsis known in literature. For this reason we plan to adopt some automatic tools for exploring the hugeparameter space.

4 Conclusions

In future we intend to use experimental data to tune the dynamics of our specifications such asto simulate real biological processes. In this respect the use of model checking methodologies willcontribute towards validating certain properties of the systems modeled.

On the long term we believe that these steps can represent the first stage toward a quantitativeanalysis that will hopefully lead to a better understanding of the systems under consideration.

References

1. A.P. Arkin: Synthetic cell biology. Current Opinion in Biotechnology, 12 (2001),, 638–644.2. F. Bernardini, M. Gheorghe: Population P Systems. J.UCS, 10 (2005), 509–539.3. F. Bernardini, M. Gheorghe, N. Krasnogor, J.-L. Giavitto: On Self-assembly in Population P Systems.

Lecture Notes in Computer Science, 3699 (2005), 46–57.4. F. Bernardini, M. Gheorghe, N. Krasnogor, R.C. Muniyandi, M.J. Perez-Jimenez, F.J. Romero-Campero:

P Systems as a modelling tool for biological systems. In R. Freund, G. Lojka, M. Oswald, Gh. Paun, eds.,Pre-Proceedings of the 6Th International Workshop on Membrane Computing (WMC6), 2005, 193–213.

5. L. Bianco, F. Fontana, V. Manca: P systems with reaction maps. International Journal of Foundations ofComputer Science, 17 (2006), 27–48.

6. C.V. Delen, B.H. Iglewski: Cell-to-cell signalling and Pseudomonas aeruginosa infections. Emerging Infec-tious Diseases, 4 (1998), 551–560.

7. S.P. Diggle, K. Winzer, A. Lazdunski, P. Williams, M. Camara: Advancing the quorum in Pseudomonasaeruginosa: MvaT and the regulation of N-acylhomoserine lactone production and virulence gene expres-sion. Journal of Bacteriology, 184 (2002), 2576–2586.

8. J.D. Dockery, J.P. Keener: A mathematical model for quorum sensing in Pseudomonas aeruginosa. Bulletinof Mathematical Biology, 63 (2001), 95–116.

9. F. Fontana, L. Bianco, V. Manca: P systems and the modeling of biochemical oscillations. Proc. Workshopon Membrane Computing, 2005, 199 – 208.

10. D.T. Gillespie: A general method for numerically simulating the stochastic time evolution of coupledchemical reactions. J Comput Physics, 22 (1976), 403–434.

Page 14: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

14 M. Gheorghe

11. D.T. Gillespie: Exact stochastic simulation of coupled chemical reactions. The Journal of Physical Chem-istry, 81 (1977), 2340–2361.

12. P.J.E. Goss, J. Peccoud: Quantitative modeling of stochastic systems in molecular biology using stochasticPetri nets. Proc. Natl. Acad. Sci. USA, 95 (1998), 6750–6755.

13. N. Krasnogor, M. Gheorghe, G. Terrazas, S. Diggle, P. Williams, M. Camara: An appealling computationalmechanism drawn from bacterial quorum sensing. Bulletin of the EATCS, 85 (2005), 135–148.

14. A.M. Lazdunski, I. Ventre, J.N. Sturgis: Regulatory circuits and communication in Gram-negative bacteria.Nature Reviews, Microbiology, 2 (2004), 581–592.

15. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61 (2000), 108–143.16. Gh. Paun: Membrane Computing. An Introduction. Springer, Berlin, 2002.17. J.P. Pearson: Early activation of quorum sensing. Journal of Bacteriology, 184 (2002), 2569–2571.18. M.J. Perez-Jimenez, F.J. Romero-Campero: Modelling Vibrio fischeri’s behaviour using P systems. In

Systems Biology Workshop, ECAL, 2005.19. M.J. Perez-Jimenez, F.J. Romero-Campero: Modelling gene expression control using P systems: The lac

operon. A case study. Submitted.20. M.J. Perez-Jimenez, F.J. Romero-Campero: P systems, a new computationl modelling tool for systems

biology. Transactions on Computational Systems Biology, to appear.21. M.J. Perez-Jimenez, F.J. Romero-Campero: A model of the quorum sensing system in Vibrio fischeri using

P systems. Submitted.22. D. Pescini, D. Besozzi, G. Mauri, C. Zandron: Dynamical probabilistic P systems. International Journal

of Foundations of Computer Science, 17 (2006), 183–195.23. A. Regev, E. Shapiro: The π-calculus as an abstraction for biomolecular systems. In G. Ciobanu, G.

Rozenberg, eds., Modelling in Molecular Biology, Springer, 2004.24. G. Terrazas, N. Krasnogor, M. Gheorghe, F. Bernardini, S. Diggle, M. Camara: An environment aware P

system model of quorum sensing. CIE 2005, Lecture Notes in Computer Science, 3526 (2005), 473–485.25. A.U. Viretta, M. Fussenegger: Modelling the quorum sensing regulatory network of human-pathogenic

Pseudomonas aeruginosa. Biotechol. Prog., 20 (2004), 670–678.26. K. Winzer, K.R. Hardie, P. Williams: Bacterial cell-to-cell communication: sorry, can’t talk now – gone

to lunch! Current Opinon in Microbiology, 5 (2002), 216–222.27. PRISM Web Site: http://www.cs.bham.ac.uk/~dxp/prism/

Page 15: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Metabolic P Systems for Biochemical Dynamics

Vincenzo Manca

University of VeronaDepartment of Computer Science

Strada Le Grazie, 1537134 Verona, Italy

Abstract. Metabolic P systems are a special class of P systems which seem to be adequatefor expressing biological phenomena, especially, metabolism and signaling transduction. Basicmotivations for their introduction are given and their main aspects are explained by means ofan example of biological modeling. A new kind of regulation mechanism is outlined, which couldbe the basis for a more efficient construction of computational models from experimental dataof specific metabolic processes.

1 Introduction

P systems were introduced as a new computation model, inspired by biology [32, 33, 37], based onmultisets and membranes. The biological roots of this formalism suggested its use for mathemati-cally modeling several biomolecular phenomena acting at the cellular level, such as trans-membranetransport and communication [30, 31], consumption of energy [16, 34] and even more specific biolog-ical processes [15, 4, 2, 9]. However, these models essentially had a qualitative character. MetabolicP systems, shortly MP systems, were introduced for a better understanding of quantitative aspectsof biological systems, meanwhile avoiding the use of complex systems of differential equations. Dif-ferently from the classical P systems, typically based on nondeterministic evolution strategies, MPsystems have a discrete deterministic evolution strategy that links their behavior to specific dynamicalparameters.

Early attempts of symbolic descriptions of metabolic processes were initiated by the author, ap-proximately, ten years ago [23, 24]. In these papers some primitive notions of membrane systems wereconsidered, but the use of logical formulae driving metabolite concentrations made them too generalfor expressing biological situations in a significant way. The theory of P systems was crucial in twoimportant steps toward a new symbolic model of a metabolic system. A first step was the dynamicalperspective in the study of P systems, introduced in [3], where the dynamical patterns of P systemswere the main focus of investigation. A second step was the introduction of a molar perspective, bor-rowed from chemistry, with an abstract notion of “reaction strength” as a parameter able to regulatethe cooperation/competition among the rules of P systems [25]. In fact, in a very first approximation,a cell is a membrane system, and its functioning is determined by all the types of molecules insideit, by the amount of molecules of these types, and by the cell compartments where they are located[1]. Therefore, it is of great importance to define a method for computing the evolution of a P systemthat is directly meaningful with respect to biochemical reactions. In this perspective, a transformationAA → BC is better read in chemical terms, as something which expresses the following prescription:“two moles of A produce one mole of B and a mole of C”. Here a mole is a conventional populationunit like a battalion, a company, a brigade, which is not conceived in an absolute way, as it happensin the classical chemical setting (1 mole ≈ 6.02 × 1023 molecules), but it is relative to the specificsystem. If we fix the number of objects of a mole, then the dimension of a multiset is expressed, interms of moles, by a rational number.

MP systems [27–29, 13] formalize these intuitions by considering P systems with a particular de-terministic procedure for computing their evolution. This procedure, called MP Algorithm, shortlyMPA [28], aims at capturing the salient chemical mechanisms that are responsible of the dynamicsof a wide class of biomolecular processes. We have shown that MP systems effectively model the dy-namics of several biochemical processes: the Belousov-Zhabotinsky reaction (Brusselator) [6, 8], the

Page 16: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

16 V. Manca

Lotka-Volterra dynamics [25, 7, 6, 8, 13], a Susceptible-Infected-Recovered epidemic [6], the LeukocyteSelective Recruitment in the immune response [15, 6], the Protein Kinase C Activation [8], CircadianRhythms [12], and Mitotic Cycles [28]. Other phenomena under investigation concern Cdc25A degra-dation in tumor processes, an oscillatory circuit that includes Protein Kinases ERK2 and PK [22]and the intercellular communication which occurs in Dictyostelium discoideum [17]. The most part ofthese models will be collected in [5].

2 Metabolic P Systems

MP systems are deterministic P systems where i) the state of the system, at each time instant, isgiven by the amount of matter that is assigned to any (chemical) substance present in the system,and ii) the transition to the next state (after some specified interval of time) is calculated accordingto a mass partition strategy, that is, the available matter of each substance is partitioned among allreactions which need to consume it. The policy of matter partition is regulated at each instant bysome real values, call them reactivities, which represent the strength of any reaction.

A discrete multiset over an alphabet T is a function from T to the set N of natural numbers. Acontinuous multiset over an alphabet T is a function from T to the set R of real numbers. As it iscustomary in P systems, we will adopt the string notation for discrete multisets, that is, when a stringdenotes a multiset, the order of its symbols is not relevant. We write X ∈ α for saying that X is asymbol occurring in the string α (sometimes, the symbol + is used for concatenation, in order to stressthat in multisets concatenation is commutative; more details on P systems notations can be found in[33]).

The set Q of states over an alphabet T are the continuous multisets over T . The passage fromdiscrete to continuous states is motivated by the use of moles for determining the mass associated toeach symbol of T .

The notion of MP system we consider here comes from [29] and should be better identified by thatof zero level MP system, because only one membrane is considered.

Definition 1 (MP System) An MP system is a construct

M = (T, R, F, ν, µ, τ, q0)

in which

– T is a finite set of symbols;– R is a finite set of rules, i.e., pairs of discrete multisets over T (represented, as usual, in the arrow

notation);– F is the set of reaction maps, such that F = fr | r ∈ R, where fr : Q → R. Very often the

reactivity fr(q) in the state q depends only on the mass associated to some of the symbols of T .For this reason, it is convenient to introduce a real variable x = q(X) to any symbol X ∈ T . Wewrite fr(x, y, . . .) to make explicit the variables x, y, . . . which fr depends on, and we denote by γr

a string where all and only the elements of T occur which may influence the reactivity of the ruler;

– ν is a natural number which specifies the value of a (conventional) mole of M ;– µ is a function which assigns to each X ∈ T , the mass µ(X) of a mole of X, with respect to some

measure unit;– τ is the temporal interval between two consecutive states;– q0, the initial state of M , an element of Q.

The temporal evolution of an MP system M is calculated by means of a metabolic differenceoperator ∆q, which provides for any state q ∈ Q a function

∆q : Q → R

such that, for every X ∈ T , the state following q in the temporal evolution of M is given by q(X) +∆q(X).

Page 17: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Metabolic P Systems for Biochemical Dynamics 17

Two assumptions are fundamental in the definition of reaction rules and reaction maps used byMPA, which directly relate to the perspective of mass partition strategy adopted for MP systemsevolution.

Principle 2 (Transparency) In any MP system, for every X ∈ T , a rule rX is present, which iscalled transparent rule for the substance X, and such that X → X. The reactivity of a transparentrule rX , in a given state, indicates the inertia of substance X to be transformed into other substances.

Principle 3 (Creativity) Any input rule r of type λ → X is assumed to be, implicitly, transformedinto a rule λr → λrX where λr is a new symbol in T , called the input symbol of r. This means thata sort of input gate, as a container of a given capacity of X, is assumed to feed the system from theoutside, at a rate depending on the reactivity of the input rule. This capacity determines the creativityof the rule λ → X, as the maximum value of elements X that can enter into the system at eachevolution step.

The value of transparency of each element of T (possibly extended with input symbols), and thevalue of the creativity of input rules are very important parameters for the evolution of MP systemsaccording to the strategy we are going to define.

In order to define our MP algorithm, which formalizes the intuition given at beginning of Section2, we use the following notation from [28], that will be adopted in the rest of the paper and it will bealways related to a metabolic system M = (T,R, F, ν, µ, τ, q0).

Definition 4 (MP Notation)

– Each r ∈ R is denoted by r : αr → βr; αr identifies the multiset of the substrates of r, and βr

identifies the multiset of the products of r;– hr(X) is the number of occurrences of X in αr;– gr(X) is the number of occurrences of X in βr;– Rα(X) = r ∈ R |X ∈ αr;– Rβ(X) = r ∈ R |X ∈ βr;– R(X) = Rα(X) ∪Rβ(X);– Π(αr) =

∏X∈αr

q(X)hr(X) (Π(αr) = 1 if αr = λ).

We assume that if αr = λ, then βr ∈ T , and if βr = λ then αr ∈ T .MP systems and their evolution is based on three basic assumptions which generalize well known

chemical principles.

– Lavoisier Principle The overall mass consumed by any rule has to equate the overall mass ofits products (mass conservation law).

– Avogadro Principle If X ∈ αr, then hr(X)ur(q) moles of X are consumed by r and if Y ∈ βr,then gr(Y )ur(q) moles of Y are produced by r. The number ur(q), called the reaction unit of ruler in the state q, is determined by the reactivity of r at that time (stoichiometry law).

– Dalton Principle For any X ∈ T , the global number of moles of X produced/consumed, inthe passage from a state to the next state, is the algebraic sum of moles produced/consumed,according to Avogadro’s principle, by all the rules where X occurs (additivity law).

The first principle imposes a constraint to the rules, the second principle defines the role of reactionunits, and the third one says that the variation of a substance is the sum of the variations due to allthe rules acting on it.

Definition 5 (MPA) The value of the metabolic difference operator ∆q of an MP system, in a stateq ∈ Q and on a symbol X ∈ T , is given by:

∆q(X) =∑

r∈R(X)

(gr(X)− hr(X)) · ur(q)

Page 18: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

18 V. Manca

where

ur(q) = min

wY,q(r)q(Y )hr(Y )

| Y ∈ αr

and, for every Y ∈ T

KY,q =∑

r∈Rα(Y )

fr(q) and wY,q(r) =fr(q)KY,q

,

where it is assumed that KY,q 6= 0.

The extension of this algorithm to the case of MP systems with many membranes is obtained byreplacing a variables X with the pair of variables (X, i) where i denotes an index of a membrane,and in a rule (X, i) means that the rule applies to X (consuming or producing it) if it is inside themembrane i (by using the membrane boundary notation [3], this information is explicitly put in eachrule).

In an MP system two parts are clearly distinguishable: the signature and the quantities. The firstpart (T,R, F ) indicates the kinds of objects, the reaction and their regulation structure. The secondpart specifies the quantitative aspect which give meaning to the numbers which describe the evolutionof systems. We represent the signature of metabolic P systems, in a way directly readable in termsof MP algorithm, by means of MP graphs [28]. Similar graphical formalisms were developed in thecontext of complex reaction networks (SNA, Stoichiometric Network Analysis, and MCA, MetabolicControl Analysis [10, 11, 35]; see also [20, 36]). Figure 3 is an example of MP graph which translatesin graphical terms all the information given in Table 4 (the biological meaning will be clarified in thenext paragraph): circles are substances, full black circles are rules, squares are reaction maps, andtriangles link to rules which feed the system from outside or expel substances (λ → X or X → λ forsome X ∈ T ).

Now we consider an example of biological modeling which highlights the expressive power ofMP formalisms and its relationship with classical differential models. Figure 1 describes the mitoticoscillator in amphibian embryos, which is an important case study reported in [17]. Mitotic oscillationsare a mechanism exploited by nature to regulate the onset of mitosis, that is, the process of celldivision aimed at producing two identical daughter cells from a single parent cell. More precisely,mitotic oscillations concern the fluctuation in the activation state of a protein produced by cdc2 genein fission yeasts or by homologous genes in other eukaryotes. The model here considered focuses on thesimplest form of this mechanism, as it is found in early amphibian embryos. Here (see Figure 1) cyclinis synthesized at a constant rate and triggers the transformation of inactive (M+) into active (M)cdc2 kinase, by enhancing the rate of a phoshatase E1. Another kinase reverts this modification. Onthe other hand a kinase E3 elicits the transformation from the inactive (X+) to the active (X) formof a protease that degrades cyclin, and this activation is reverted by a phoshatase E4 (E1, E2, E3, E4

are not indicated in the figure, vi, vd, V1, V2, V3, V4 denote rates of the processes). The activation ofcdc2 kinase provides the formation of a complex known as M-phase promoting factor (or MPF ). Thecomplex triggers mitosis and the degradation of cyclin leads to the inactivation of the cdc2 kinase thatbrings the cell back to the initial conditions in which a new division cycle can take place. In yeastsand in somatic cells the cell cycle is subject to the control of many checkpoints, but the mechanismbased on the activation-inactivation of cdc2 kinase remains the same [1].

The following autonomous ODE (system of Ordinary Differential Equations where time variabledoes not explicitly occurs in the right member of equations) is the differential model of dynamicsdescribed in Figure 1, where c,m, x are the percentages of C, M,X respectively (1−m, 1− x are thepercentages of M+, X+ respectively):

dcdt = vi − vdx

cKd+c −Kdc

dmdt = V1

(1−m)K1+(1−m) − V2

mK2+m

dxdt = V3

(1−x)K3+(1−x) − V4

xK4+x

(1)

Figure 2 is a solutions of these equations obtained by numerical integration for some value ofparameters given in [17].

Page 19: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Metabolic P Systems for Biochemical Dynamics 19

Fig. 1. The model provided by A. Goldbeter, from [17].

Fig. 2. A numerical solution of the set of differential equations (1) implementing the model provided by A.Goldbeter, from [17].

Page 20: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

20 V. Manca

Fig. 3. A model of the mitotic oscillator of Figure 1 represented by a MP graph, from [28]. The correspondenceswith Goldbeter’s constants are: k1 = vi, k2 = vd, k3 = kd, k4 = Kd, k5 = VM1, k6 = Kc, k7 = K1, k8 = V2, k9 =K2, k10 = V3, k11 = K3, k12 = V4 and k13 = K4, V1 = c

Kc+cVM1.

r1 : λ → C f1 = vi

r2 : XC → X f2 = vd/kd + cr3 : C → λ f3 = Kd

r4 : M+C → MC f4 = VM1/(Kc + c)(K1 + m+)r5 : M → M+ f5 = V2/(K2 + m)r6 : X+M → XM f6 = V3/(K3 + x+)r7 : X → X+ f7 = V4/(K4 + x)

Fig. 4. An alternative formulation of the MP of Figure 3. Parameters and their numerical value are definedin [17].

Page 21: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Metabolic P Systems for Biochemical Dynamics 21

A general relationship between MP graphs and ODE holds. In fact, MP Graphs transform naturallyinto ODE systems according to the mass principle, on which differential models are based on. Theamount of a products generated by a reaction is proportional to the product of quantities of substrates(considered with their multiplicity). This idea is formalized by the following definition where the MPnotation 4 is assumed, x is the real variable q(X), and x′ denotes the derivative of variable x withrespect to time.

Definition 6 (MP-ODE Transformation) Let G = (T,R, F ) be an MP graph. For every X ∈ T ,let x be the real variable associated to X; then the following is the ODE-transformed of G:

x′ =∑

r∈R

gr(X)− hr(X)fr(q)Π(αr)

Figure 3 shows an MP graph which provides the dynamical structure of an MP system. It isdirectly related to Goldbeter’s model. It is obtainable by means of the following procedure [14], whichis completely motivated by the theorems we give at the end of this section. Consider an MP graph Hwhere all the known biochemical reactions involving the mitotic phenomenon in amphibian embryosare indicated as rules, while reaction maps are unknown. Consider the ODE-Transform ODE(H)of H, defined in Definition 6, and equate the right members of (1) and ODE(H). Of course, theseequations determine the values of the reaction maps of H such that its ODE-Transform coincides with(1).

Table 4 is an alternative way to represent the MP graph in Figure 3, where constants were put inthe original format given in [17].

The following classes of MP systems play an important role in the relationship between ODE andMP systems.

Definition 7 (Non-cooperative MP System) A non-cooperative MP system is an MP systemwhose rules are non-cooperative, i.e., αr ∈ T for every rule r of the system.

Definition 8 (Uniformly Transparent MP System) For some φ ∈ R, an MP system is φ-unifor-mly transparent if the reaction map of any transparent rule of the system has the same constant valueφ in any possible state.

The following results can be proved as generalizations of those proved in [14].

Theorem 9 Given an ODE, we can find (in many possible manners) an MP graph having the givenODE as its ODE transform.

Theorem 10 The computation of a non-cooperative φ-uniformly transparent MP system converges,as φ →∞, to the solution provided by the ODE system obtained by using MP-ODE transformation.

Theorem 11 For any MP system M , there exists a non-cooperative MP system M ′ having the sameODE transform of M .

Corollary 12 Approximate solutions of autonomous ODE which describe metabolic systems can besolved by computing the evolution of suitable MP systems.

Table 5 describes an MP graph which is obtained by a procedure relative to Theorem 11 [14]. Itis easy to verify that the ODE-Transform of this graph, according to Definition 6, is equal to that ofgraph in Figure 3, that is, to the equations (1). As it is asserted by Theorem 10, if we consider anuniform transparency acting in the system, then the MP evolution of this system approximates, forincreasing transparency, the differential solution of Golbeter’s model.

Figure 6 shows the evolution of the MP system given in Table 4 for a small value of transparency.Figure 7 shows that the signal is completely lost when transparency is increased. This discrepancybetween differential and P metabolic models is consistent with the previous theorems relating MP

Page 22: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

22 V. Manca

r1 : λ → C f1 = vi

r′2 : X → X f2 = vd · c/kd + cr′′2 : C → λ f2 = vd · x/kd + cr3 : C → λ f3 = Kd

r′4 : C → MC f4 = VM1 ·m+/(Kc + c)(K1 + m+)r′′4 : M+ → λ f4 = VM1 · c/(Kc + c)(K1 + m+)r5 : M → M+ f5 = V2/(K2 + m)r′6 : X+ → XM f6 = V3 ·m/(K3 + x+)r′′6 : M → λ f6 = V3 · x+/(K3 + x+)r7 : X → X+ f7 = V4/(K4 + x)

Fig. 5. A non-cooperative model slowly convergent.

Fig. 6. The mitotic oscillator of Figure 1 computed by means of a cooperative MP system with transparency5.

Fig. 7. The mitotic oscillator of Figure 1 computed by means of a cooperative MP system with transparency50.

Page 23: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Metabolic P Systems for Biochemical Dynamics 23

Fig. 8. The mitotic oscillator of Figure 1 computed by means of non-cooperative MP systems having equations(1) as ODE-Transform.

graphs and differential equations. In fact, the system of 4 does not fulfill the non-cooperativity re-quirement. But, if we apply the procedure providing a non-cooperative MP graph equivalent to thatof Table 4, then we get many possible MP graphs. Two of them are given in Tables 5 and 9. Boththese systems have the evolution given in Figure 8. The similarity with Golbeter’s solution 2 is reallyimpressive and confirms the validity of the previous theorems, in a very significant biological model.

The only difference between systems in Tables 5 and 9 is the convergence speed. In fact system ofTable 9 converges more rapidly to the differential solution of (1), because, with a transparency valueof 1.500, it provides a better result of the system of Table 5 with a transparency value of 7.500.

r1 : λ → C f1 = vi

r′2 : C → X f2 = vd · x/kd + cr′′2 : X → λ f2 = vd · c/kd + cr3 : C → λ f3 = Kd

r′4 : C → MC f4 = VM1 ·m+/(Kc + c)(K1 + m+)r′′4 : M+ → λ f4 = VM1 · c/(Kc + c)(K1 + m+)r5 : M → M+ f5 = V2/(K2 + m)r′6 : X+ → XM f6 = V3 ·m/(K3 + x+)r′′6 : M → λ f6 = V3 · x+/(K3 + x+)r7 : X → X+ f7 = V4/(K4 + x)

Fig. 9. A non-cooperative model rapidly convergent.

3 Metabolic P Systems with Log-Gain Regulation

In the definition of MPA it appears completely clear that what is essential in the evolution of an MPsystem is the knowledge of the reaction unit of each rule at each evolution step. A simple argument

Page 24: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

24 V. Manca

proves that reaction units determine completely the variation concentration of substances in thepassage from a state to the next one. In fact, if we know the rules which produce and consume a givensubstance X, from the stoichiometry of these rules, given the value (number of moles) or their reactionunits, we can deduce exactly the mole variation of X in the step. In other words, the knowledge ofthe number of objects transformed by any rule in the time unit is what we need for derive the newconcentrations of substances at the next step.

The reaction maps allow us to evaluate these values by computing some ratios and by choosing asuitable minimum, according to Avogadro’s principle. However, we could follow a different strategy, byreversing the relationship between reactivities and reaction maps. If the reaction unit of a rule dependson the state of the system, it is reasonable to assume that really only a subset of all substance typesinfluence this reactivity. The types such that a variation of their concentration determine a variation ofreactivity of r are called regulators of rule r. By using our previous notation the string γr is constitutedby the regulators of r. In a perspective of population phenomena, another assumption seems to beperfectly natural: a proportion should exist among the relative variation of a regulator of a rule r andthe relative variation of reactivity of r. The relative variation of a substance X is defined as the ratiobetween the variation ∆(x) and x. In differential notation (using derivative with respect a continuoustime) this ratio corresponds to dx

x , but from elementary calculus we know that dxx = d(lg x). This

equation explains the term “log-gain” for expressing relative variations [36].Now, another kind of Dalton’s principle claims that the effects of regulators are cumulative, there-

fore the passage from the value of the reactivity of a rule r to its value in the next step can becomputed as a linear combination of the relative variations of concentrations of the regulators of r.The coefficients of this linear form are determined by the log-gain parameters. In this way, startingfrom some initial values of reactivities we can derive their values in time, therefore, these parametersdetermine the reaction maps of rules.

MP systems with log-gain regulation, shortly MP systems with LG regulation or MP-LG systems,are similar to the systems previously defined, but their states have two components (q, u); the first onecoincides with the state of a simple MP system, the second one is the reactivity function u : R → Rwhere, for each rule r, u(r) is the reactivity of r. Moreover, a pair (pr, p(r,γ)) is associated to each ruler, such that the sequence p(r,γ) = (p(r,Y ) | Y ∈ γr) provides the log-gain regulation parameters of r.These parameters determine a new evolution strategy which is defined in the next Definition 13. Insimple words, the state of an MP-LG system, having n substances and m rules, is determined by a realvector of n + m values giving the mass of each substance and the strength of each rule. At each stepMP rules change the substance masses and LG parameters change the reactivities according to theprinciple that the log-gain of each reactivity of a rule has to be a linear combination of the log-gainsof substances regulating the rule.

Definition 13 (MPA-LG) The value of the metabolic difference operator, in a state (q, u), for anMP-LG system (T,R, P, ν, µ, τ, q0, u0) (reaction maps were replaced by parameters P , and the vector u0

of initial reactivities was added) consists of two parts, the variation ∆q(X) of substance concentrationsand the variation ∆v(r) of reactivities, where, for any X ∈ T and r ∈ R:

∆q(X) =∑

r∈R(X)

(gr(X)− hr(X)) · u(r) (2)

∆u(r) = u(r) · ∑

Y ∈γr

(p(r,Y )∆q(Y )/q(Y )

)+ pr

(3)

Remark 14 In MP-LG systems it is not necessary to consider transparency and creativity. In fact,in these systems the reaction units include all the information for computing the productivity of rules.This aspect precludes any comparison with differential equations, as it was developed in [14], basedon the relationship between time partition and transparency. However, LG regulation discloses newinteresting possibilities for the determination of numerical parameters of models.

The following theorem explains the advantage of LG-MP systems in deducing the regulation pa-rameters from the experimental observation of the evolution of real systems.

Page 25: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Metabolic P Systems for Biochemical Dynamics 25

Theorem 15 For any MP-LG system, there exists a sequence of steps of its evolution (each step beingthe next of the previous one) which univocally determines the value of log-gain regulation parameters.

Proof. Consider a metabolic system with n substances, m rules and having globally k regulationparameters for all the m rules. Observe this system for s steps and put the step as index in concen-trations and reactivities. From the first equation of Definition 13, by evaluating the concentrations inthe first two steps we get n equations with m unknown quantities: u1(r1), u1(r2), . . . , u1(rm). In eachof the following steps, by using both equations of Definition 13, we add other m+n equations with munknown quantities (the reactivities of each step) and k unknown quantities of regulation parametersthat are the same for any step. In conclusion, in s steps we get (s − 2)(n + m) + n equations and(s− 1)m + k unknown quantities. This means that in order to have a sufficient number of equationsfor solving the system we need to proceed a number s of steps which solves the following equation:

(s− 2)(n + m) + n = (s− 1)m + k

which, after simple manipulations, provides the solution (dxe denotes the minimum integer ≥ x):

s =⌈

m + k

n

4 Conclusions

MP systems have several computational advantages with respect to the differential models, but theirmost important aspect is their direct biological meaning and their structure, where the reaction leveland the regulation level are clearly interconnected but separated.

The search for MP systems where reaction maps can be deduced in some way from experimentaldata is the main problem to solve for a systematic applications of MP systems to complex dynamics.Without this possibility the construction of models is a very difficult task, which can be developedonly with specific strategies depending on the particular cases.

Maybe other difference operators for MP-LG systems will be more appropriate in some specificcases. However, the main idea of this approach seems to indicate real possibilities to overcome manydifficulties of differential models. In fact, MP systems with log-gain regulation seem to be structureswhich could allow us to directly build models from the data of biological phenomena. The future devel-opments in theoretical investigation, in suitable biological experiments, and in related computationaltools will be focused on this main objective.

References

1. B. Alberts and M. Raff: Essential Cell Biology. An Introduction to the Molecular Biology of the Cell.Garland Science, New York, 1997.

2. F. Bernardini and M. Gheorghe: Cell communication in tissue P systems: universality results. SoftComputing, 9 (2005), 640–649.

3. F. Bernardini and V. Manca: P systems with boundary rules. In Proc. 3rd Workshop on MembraneComputing, LNCS 2597, Springer, 2002, 107–118.

4. D. Besozzi and G. Ciobanu: A P system description of the sodium-potassium pump. In G. Mauri, G. Paun,M. J. Perez-Jimenez, G. Rozenberg, and A. Salomaa, eds., Membrane Computing, 5th International Work-shop, WMC 2004, LNCS 3365, Springer, 2005, 210–223.

5. L. Bianco: Membrane Models of Biological Systems. PhD Thesis, University of Verona, in preparation.6. L. Bianco, F. Fontana, G. Franco, and V. Manca: P systems for biological dynamics, in [9], 2006, 81–126.7. L. Bianco, F. Fontana, and V. Manca: Reaction-driven membrane systems. In L. Wang, K. Chen, and Y.-

S. Ong, eds., Advances in Natural Computation, First International Conference, ICNC 2005, Changsha,China, August 27-29, 2005, Proceedings, Part II, LNCS 3611, Springer, 2005, 1155–1158.

8. L. Bianco, F. Fontana, and V. Manca: P systems with reaction maps. International Journal of Foundationsof Computer Science, 17 (2006), 27–48.

9. G. Ciobanu, G. Pau, and M. J. Perez-Jimenez, eds.: Applications of Membrane Computing. Springer,Berlin, 2006.

Page 26: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

26 V. Manca

10. B.L. Clark: Stability of complex reaction networks. Adv. Chem. Phys., 43 (1983), 1–216.11. D.A. Fell: Metabolic control analysis: a survey of its theoretical and experimental development. Biochem-

istry J., 286 (1992), 313–330.12. F. Fontana, L. Bianco, and V. Manca: P systems and the modeling of biochemical oscillations. In R. Fre-

und, G. Paun, G. Rozenberg, and A. Salomaa, eds., 6th Workshop on Membrane Computing (WMC6),LNCS 3850, Springer, 2005, 199–208.

13. F. Fontana and V. Manca: Predator-prey dynamics in P systems ruled by metabolic algorithm. Submitted.14. F. Fontana and V. Manca: Discrete solutions of differential equations by metabolic P systems Submitted.15. G. Franco and V. Manca: A membrane system for the leukocyte selective recruitment. In A. Alha-

zov, C. Martın-Vide, and G. Paun, eds., 4th Workshop on Membrane Computing (WMC4), LNCS 2933,Springer, 2005, 180–189.

16. R. Freund: Energy-controlled P systems. In G. Paun, G. Rozenberg, A. Salomaa, and C. Zandron, eds.,Proc. Int. Workshop WMC-CdeA 2002, LNCS 2597, Springer, 2005, 247–260.

17. A Goldbeter: A minimal cascade model for the mitotic oscillator involving cyclin and cdc2 kinase. PNAS,88 (1991), 9107–9111.

18. A Goldbeter: Computational approaches to cellular rhythms. Nature, 420 (2002), 238–245.19. A. Goldbeter: Biochemical Oscillations and Cellular Rhythms. Cambridge University Press, New York,

2004.20. H. Kitano: Computational systems biology. Nature, 420 (2002), 206–210.21. J.C. Leloup and A. Goldbeter: A model for circadian rhythms in Drosophila incorporating the formation

of a complex between the PER and TIM proteins. Journal of Biological Rhythms, 13 (1998), 70–87.22. M. Maeda, S. Lu, G. Shaulsky, Y. Miyazaki, H. Kuwayama, Y. Tanaka, A. Kuspa, and W. Loomis: Periodic

signaling controlled by an oscillatory circuit that includes protein kinases ERK2 and PK. Science, 304(2004), 875–304.

23. V. Manca: Rewriting and metabolism: A logical perspective. In G. Paun, ed., Computing with Bio-Molecules, Springer, 1998.

24. V. Manca and D.M. Martino: From string rewriting to logical metabolic systems. In G. Paun and A.Salomaa, eds., Grammatical Models of Multi-Agent Systems, Gordon and Breach Science Publishers, 1999.

25. V. Manca, L. Bianco, and F. Fontana: Evolutions and oscillations of P systems: Applications to biologicalphenomena. In G. Mauri, G. Paun, M. J. Perez-Jimenez, G. Rozenberg, and A. Salomaa, edss, MembraneComputing, 5th International Workshop, WMC 2004, LNCS 3365, Springer, 2005, 63–84.

26. V. Manca, G. Franco, and G. Scollo: State transition dynamics: basic concepts and molecular comput-ing perspectives. In M. Gheorghe, ed., Molecular Computational Models: Unconventional Approachers,Chapter 2, Idea Group Inc. UK, 2005, 32–55.

27. V. Manca: Topics and problems in metabolic P systems. In G. Paun and M. J. Perez-Jimenez, eds., Proc. ofthe Fourth Brainstorming Week on Membrane Computing (BWMC4), Sevilla, Spain, Fenix Editora, 2006.

28. V. Manca, L. Bianco: Biological networks in metabolic P systems. Submitted.29. V. Manca: MP systems approaches to biochemical dynamics: Biological rhythms and oscillations. Seventh

Workshop on Membrane Computing, Invited Lecture, Leiden, July 2006.30. C. Martin-Vide, G. Paun, and G. Rozenberg: Membrane systems with carriers. Theoretical Computer

Science, 270 (2002), 779–796.31. A. Paun and G. Paun: The power of communication: P systems with symport/antiport. New Generation

Computing, 20 (2002), 295–306.32. G. Paun: Computing with membranes. J. Comput. System Sci., 61 (2000), 108–143.33. G. Paun: Membrane Computing. An Introduction. Springer, Berlin, 2002.34. G. Paun, Y. Suzuki, and H. Tanaka: P systems with energy accounting. Int. J. Computer Math., 78

(2001), 343–364.35. L.A. Segel and I.R. Cohen, eds.: Design Principles for the Immune System and Other Distributed Au-

tonomous Systems. Oxford University Press, 2000.36. E.O. Voit: Computational Analysis of Biochemical Systems. Cambridge University Press, 2000.37. The P Systems Web Page. http://psystems.disco.unimib.it

Page 27: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Seasonal Variance in P System Modelsfor Metapopulations?

Daniela Besozzi1, Paolo Cazzaniga2, Dario Pescini2, Giancarlo Mauri2

1 Universita degli Studi di MilanoDipartimento di Informatica e Comunicazione

Via Comelico 39, 20135 Milano, [email protected]

2 Universita degli Studi di Milano-BicoccaDipartimento di Informatica, Sistemistica e Comunicazione

Via Bicocca degli Arcimboldi 8, 20126 Milano, Italycazzaniga/pescini/[email protected]

Abstract. Metapopulations are ecological models which describe the interaction and the be-havior of populations living in fragmented habitats; in this paper they are analyzed withinthe framework of Membrane Computing, by means of dynamical probabilistic P systems withadditional structural features (a weighted graph associated to the membrane structure, muterules for reducing the maximal parallelism, stochastic feeding, etc.). In particular, we investigatethe effect of periodic resource feeding, due to seasonal variance, over emergent metapopulationdynamics.

1 Introduction

P systems, or membrane systems, were introduced in [13] as a class of unconventional computingdevices of distributed, parallel and nondeterministic type, inspired by the compartmental structureand the functioning of living cells. The basic model consists of a membrane structure where multisetsof objects evolve according to given evolution rules. Assuming an universal clock, a computation isobtained by letting all regions and all objects inside them be simultaneously processed, by using therules in a nondeterministic and maximally parallel manner; the evolved objects are then communi-cated to the regions specified by the rules. A computing device is obtained, starting from an initialconfiguration, letting the system evolve as just described and collecting the output in a specifiedmembrane or outside the system. In this work we use dynamical probabilistic P systems (DPPs, inshort), a class recently introduced [17, 16] for the analysis and simulation of the behavior of complexsystems. DPPs are discrete and stochastic models, where the probability values associated with therules change during the evolution of the system.

In the following, we will assume the reader is familiar with P systems. A comprehensive overviewof basic P systems and of other classes appeared in [14], a recent bibliography can be found in the Psystems Web Page [20].

More recently, P systems have been applied in various research areas, ranging from Biology toLinguistics to Computer Science, see e.g. [4]. In this paper we use membrane systems as a modelingtool for metapopulations (or multi-patch systems), which are extensively investigated in Ecology toanalyze the behavior of interacting populations, with the aim of determining how a fragmented habitatinfluences local and global population persistence. A metapopulation consists of local populations,living in spatially separated habitat patches, and a dispersal pool, which is a spatial place allowingindividual migration among the patches. In multi-patch systems, two principal classes of dynamicsexist: the populations can locally interact inside a patch (according, e.g., to the Lotka-Volterra modelof preys and predators [12]), while the dispersal of individuals among patches can have effects on theglobal behavior of the whole system [8, 9, 18, 22].

? Work supported by the Italian Ministry of University (MIUR), under projects PRIN-04 “Systems Biol-ogy: modellazione, linguaggi e analisi (SYBILLA)” and PRIN-05 “Automi e Linguaggi Formali: aspettimatematici e applicativi”.

Page 28: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

28 D. Besozzi, P. Cazzaniga, D. Pescini, G. Mauri

Other works in the area of P systems previously appeared with some application to ecological orpopulation systems. For instance, Lotka-Volterra dynamics were analyzed in [2, 17], while a tritrophicsystem consisting of herbivore-induced plant volatiles and carnivorous was modeled in the frameworkof ARMS in [21]. The main difference between this work and previous ones lies in the effective use ofmany regions to model the ecological systems, thus really exploiting the advantages of a membranestructure. However, when modeling metapopulations, the classical definition of membrane structureis not suitable to capture all the peculiarities characterizing fragmented habitats and real landscapes,thus some ingredients have to be added to the basic membrane structure in order to model the spatialand dimensional properties of the regions of interest. Moreover, we will operate on the classical notionof maximal parallelism, still allowing the maximal application of rules to all objects but, at the sametime, reducing the actual maximal consumption of objects. This will be achieved by introducing ruleswhich do not modify the objects on which they act.

Once the necessary new features are introduced in DPPs, they turn out to be a valid modelingmethod for the analysis of population systems living in fragmented habitats, having interactions amongindividuals (according to some specified dynamics, such as the one emerging from prey-predator orhost-parasitoid interactions), where stochastic mechanisms also govern the local and global behaviors.In particular, in this paper we focus our attention on the analysis of stochastic and periodic resourcefeeding, that is, we simulate the effects of seasonal variance over food availability.

The paper is structured as follows. In Section 2 we recall dynamical probabilistic P systems, thatwill be used to define the stochastic discrete model for metapopulations, whose ecological characteris-tics are discussed in Section 3. Then, outlining the necessity of some new features of membrane systems,and focusing on the strategies for periodic and stochastic resource feeding, we propose our model forthe investigation of metapopulations. In Section 3.2 we show the results obtained by stochastic sim-ulations about the role of seasons over resource availability, and the corresponding metapopulationemergent dynamics. We conclude with a short discussion of the obtained results.

2 Dynamical Probabilistic P Systems

Dynamical probabilistic P systems are a stochastic class of membrane systems where the probabilityvalues, associated to the rules according to a prescribed strategy, vary during the evolution of thesystem. For a formal definition of DPPs, as well as for examples of some simulated systems, see [16,17, 15, 3]. Here we briefly recall the method for evaluating probabilities, the way the system works andsome notes on the corresponding software simulators.

The probability associated with each rule in any set Ri, i = 0, . . . , n− 1, depends on the constantassociated to the rule and on a combinatorial part that takes care of the interacting tuples of objectsthat are available in enough copies inside the current multiset. Namely, it is evaluated as follows. LetV = a1, . . . , al be the alphabet of the system, Mi the multiset inside membrane i and r : u

k−→ va rule in Ri, where k is the real positive constant associated to the rule. Let also u = aα1

1 . . . aαss ,

alph(u) = a1, . . . , as and H = 1, . . . , s. To obtain the actual normalized probability pi of applyingr with respect to all other rules that are applicable in membrane i at the same step, we first need toevaluate the (non-normalized) pseudo-probability pi(r) of r:

pi(r) =

0 if Mi(ah) < αh for some h ∈ H,

k ·∏

h∈H

Mi(ah)!αh!(Mi(ah)− αh)!

if Mi(ah) ≥ αh for all h ∈ H.(1)

The approach used to evaluate the probability of a rule is based on the Stochastic Simulation Algorithmintroduced by Gillespie in [5].

To achieve a closer resemblance to the modeled biological systems, in [1] we introduced a methodwhich allows to maintain the maximal parallelism at the level of rule application, but to reduce it atthe level of object consumption. To this aim, we use rules of the form u → (u, here), for some multisetu over V , which do not affect the current multiset whenever applied. We call them the mute rules.For instance, assume to have a membrane with two rules a → (b, out), a → (c, here) and a multiset

Page 29: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Seasonal Variance in P System Model for Metapopulations 29

consisting of 10 a’s. By using the maximal parallelism and the nondeterminism, in one step we wouldhave α copies of c in the membrane, for some α ≥ 0, 10 − α copies of b outside the membrane, andno more copies of a, since all occurrences had been consumed. If the mute rule a → (a, here) is addedinside the membrane, then in one step we would obtain α′ copies of c in the membrane, β copies of boutside the membrane, for some α′, β ≥ 0, and 10− α′ − β copies of a in the membrane. In this way,all occurrences of a are consumed but also reproduced in the same step, and thus the parallelism, atthe level of object consumption, is no more maximal.

Anyway, when adding mute rules to a membrane, we obviously do not want to change the dynamicalconditions determined inside that membrane by the constants associated to the other rules, and theirrespective mutual ratios. To this aim, we choose to apply the following strategy to compute theconstant of any added mute rule, as well as the new constants of the other corresponding rules. LetS = r1 : u

k1−→ v1, r2 : uk2−→ v2, . . . , rh : u

kh−→ vh ⊆ Rj be the maximal subset of rules appearinginside a membrane j and having the same left-hand side, for some u, v1, . . . , vh multisets over V , withvi 6= u for all i = 1, . . . , h, h ≥ 1. Let us also define KS =

∑hi=1 ki. Now, we add the mute rule

rl : ukl−→ u to the set S, and we call S′ = S ∪ rl. Since we want to preserve in S′ the relative

dynamic of the rules initially present in S, we have to associate new constants to the rules in S′. So,let us denote by k′1, . . . , k

′h the new constants of rules r1, . . . , rh in S′, and let also be K ′

S =∑h

i=1 k′i.It is easy to verify that, by choosing

k′i = ki/(1 + ρ)

for all i = 1, . . . , h, andkl = ρKS/(1 + ρ),

we obtain that:

– the mute rule will be applied with a certain proportionality with respect to the rules in S, thatis, for some arbitrarily fixed ρ ∈ [0,∞) the ratio ρ = kl/K ′

S holds;– the addition of the mute rule to the set S does not modify the underlying dynamics, that is, it

still holds K ′S + kl = KS .

Before explaining how DPPs work, we remark that for the model presented in Section 3, we willuse a definition of the DPP which is slightly different from the one given in, e.g., [17], that is, we donot consider the environment, and the feeding rules (initially defined inside the environment) are heresubstituted with “resource inflow” rules, which are active inside the patches.

A configuration Ct at a given step t, t ≥ 0, of a DPP consists of the multisets M0, . . . , Mn−1

occurring inside the membranes at the step t. Given an initial configuration C0, the system evolvesaccording to the chosen parameters, which consist of the rule constants and the parameters associatedwith the resource creating rules. At each step of the evolution, a transition from the current configu-ration to the next one is obtained by simultaneously applying all applicable rules and consuming alloccurrences of the left-hand sides of the applied rules. We assume that the system evolves accordingto a universal clock, that is, all membranes and the application of all rules are synchronized. Theapplied rules are chosen according to the probability values dynamically assigned to them; the ruleswith the highest normalized probability values will be more frequently tossed.

Simulation of DPPs are performed by means of a dedicated program written in C language, avail-able for download from the P Systems Web Page, which has been initially developed for single processorPCs [17]. The simulations reported in Section 3.2 have been running with an implementation of DPPswith the MPI (Message Passing Interface) C libraries [19] in order to: (i) spread the computation overa cluster of processors to achieve scalability, (ii) have a direct mapping of the communications amongthe membranes, and (iii) speed up the computation. Details on MPI implementation can be found in[3].

3 Modeling Metapopulations with P Systems

The concept of metapopulation was introduced in [10] and lately it has been largely applied to differentpopulations species in natural as well as artificial or theoretical fragmented habitat landscapes, to the

Page 30: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

30 D. Besozzi, P. Cazzaniga, D. Pescini, G. Mauri

aim of determining how they can influence local and global population dynamics. A metapopulationconsists of local populations, living in spatially separated habitat patches which can have differentareas, quality or isolation, and a dispersal pool, which is the spatial place where individuals from apopulation spend some lifetime during the migration among patches.

The dispersal of individuals is distance-dependent, it may reduce the local population growth andlead to an increase in extinction risk also due to environmental and demographical stochasticity. Thus,the persistence of populations is assumed to be balanced between local extinctions and establishmentof new populations in empty patches [6].

In multi-patch systems, it is possible to distinguish between two principal classes of dynamics:the populations can locally interact inside a patch (according, e.g., to the Lotka-Volterra model ofpreys and predators), while the dispersal of individuals among patches can have effects on the globalbehavior of the whole system.

Several modeling methods for metapopulation have been defined; whichever the model is chosen foranalyzing an emergent behavior of interacting populations in fragmented habitat, specific propertiesof the system are to be explicitly or implicitly considered, as the following ones (see [6, 11, 7] for furtherdetails). Referring to the landscape, in order to grasp the effect of habitat fragmentation on speciespersistence, most models take care of the spatial structure, the local environmental quality, the patcharea and the connectivity (isolation), since local conditions determine the growth and survival of patchpopulations, and high patch connectivity decreases local extinction risk.

Moreover, dispersal and colonization are distance-dependent elements which give meaning to land-scape structure in a spatial model. Referring to population interactions and dynamics, colonizationcan depend or not on the cooperation of immigrating individuals. Within-patch dynamic is claimedto improve the understanding of natural systems; thus, models not accounting for it but only assum-ing whether a patch is occupied or not usually consider local dynamics on a faster time scale withrespect to the global dynamic, and also neglect the dependence of colonization and extinction rates onpopulation sizes. Finally, regional stochasticity can account for “bad” or “good” years over the localenvironmental quality.

3.1 The model

In this section we define a model of metapopulations with predator-prey dynamics by means of DPPs,where additional features are used in order to catch and better describe relevant properties of themodeled system.

In the following, let µ be a membrane structure with degree n + 1 and depth 2, with the skinmembrane labeled with 0 and the internal membranes labeled with numbers 1, . . . , n. We will referwithout distinction to the skin membrane or dispersal pool, to the internal membranes or regionsor patches. For the modeling of a metapopulation, the membrane structure has to be intended as aset of spatially distributed regions, each one completed with a “dimension” value and with a fixed“distance” with respect to all other regions. Since the membrane structure is assumed to have herea precise spatial arrangement, we will use an (undirected) weighted graph with node attributes todescribe the set of internal membranes, thus outlining both the spatial distribution of patches andthe relevant additional features associated to them: the dimension of a patch is needed to define thedensity of the populations living inside the patch, while the distance is needed to define the dispersalrates inside the pool, as well as to identify the isolated patches. We remark that the distance, or cost,among patches is not to be necessarily intended as a physical measure, but it can also represent howstiff it is to move from one patch to another one due to the geographical morphology of the landscapeor to other general local conditions.

Formally, we define a weighted undirected graph G = (N∆, E,w) where (i) N∆ is the set of nodes,or vertices, such that to each node there is associated a value a ∈ ∆, for ∆ being a set of attributes ofsome kind, (ii) E ⊆ x, y | x, y ∈ N∆, x 6= y is the set of (undirected) edges between nodes, (iii)w : E → R+ is the weight function associating a cost to each edge in the graph.

In our case, the set of nodes N∆ coincides with the set m1, . . . , mn of internal membranes, theattribute of a patch represents the area of the patch, the edges characterize which patch is directlyreachable from any other patch, and the weight of an edge represents a cost to measure the effort

Page 31: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Seasonal Variance in P System Model for Metapopulations 31

that individuals have to face when moving from one patch to another one through the dispersal pool.When saying that a patch mi is directly reachable from patch mj , for any i, j = 1, . . . , n, we meanthat individuals exiting from patch mi will then enter patch mj after some time spent in the pool (andviceversa). Note that we consider the case of undirected graphs, though also directed graphs with twopossibly edges between any couple of patches can be used, and their relative costs can be different,thus better characterizing the landscape nature.

The mean cost of the graph G associated to the membrane structure µ is the value wG =(∑

e∈E we)/|E|. A patch h, h ∈ 1, . . . , n, is said to be isolated if wh,i À wG, for all i = 1, . . . , n.In other words, a patch is isolated if its distance from any other patch is very high, or if the cost toreach it (or to reach another patch when migrating from it) is much higher than the mean cost forreaching any other patch.

The area of a patch mi, i = 1, . . . , n, is a value σi ∈ R+. The area of the pool is implicitlyassumed to be large enough to contain all patches and to allow the dispersal of individuals, that is,σ0 À

∑ni=1 σi.

If V is the alphabet of population species, then we can define the density of patch mi, i = 0, 1, . . . , n,with respect to population species X ∈ V , as δX(mi) = |X|mi/σi, where |X|mi denotes the numberof individuals of species X inside patch mi.

Given all the necessary prerequisites, we can now define a DPP model Π for a generic metapop-ulation consisting on n patches, a dispersal pool, and two population species. We will assume thatthe populations dynamic inside each patch follows the Lotka-Volterra model (see [17] for a previousdescription with DPPs). Hence, let

Π = (V, O, µ, I, G, M0, . . . , Mn, R0, . . . , Rn)

be such that

– V = A,A′, X, Y, Y1, . . . , Yn consists of the symbol A for sustenance resources, X for the speciesof preys, Y for the species of predators. A′ is used to simulate the stochastic feeding of resourcesA, while Y1, . . . , Yn for denoting, via the subscripts 1, . . . , n, which is the originating patch of thepredators occurring in the pool, as explained below.

– O = X, Y , I = 1, . . . , n are the sets of symbols and regions that will be analyzed, respectively.– µ is a membrane structure with n elementary membranes m1, . . . , mn, and the skin membrane

m0.– G is the graph associated to the internal membranes, where we specify the set of area attributes

for patches, ∆ = σ1, . . . , σn, and the set of costs associated to the edges, Ω = wi,j | mi,mj ∈E, for all i, j = 1, . . . , n;

– M0 = ∅ and Mi = A′XpiY qi, for some pi, qi ∈ N, i = 1, . . . , n, are the multisets initially presentinside the regions.

– For each i = 1, . . . , n, Ri contains the following rules:

ri(feeding) : A′

kif−→ (A′Aγ , here), γ ∈ N determined by P ∈ Cycle,

ri(Xgrowth) : AX

kiXg−→ (XX, here),

ri(Y growth) : XY

kiY g−→ (Y Y, here),

ri(Xdeath) : X

kiXd−→ (λ, here),

ri(Y death) : Y

kiY d−→ (λ, here),

ri(dispersal) : Y Y

kid−→ (Y, here)(Yi, out),

Page 32: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

32 D. Besozzi, P. Cazzaniga, D. Pescini, G. Mauri

and the corresponding mute rules:

ri1 : AX

ki1−→ (AX, here),

ri2 : XY

ki2−→ (XY, here),

ri3 : X

ki3−→ (X, here),

ri4 : Y

ki4−→ (Y, here),

ri5 : Y Y

ki5−→ (Y Y, here),

for some kif , ki

Xg, kiY g, k

iXd, k

iY d, k

id, k

i1, . . . , k

i5 ∈ R+, for all i = 1, . . . , n. Rule ri

(feeding) describes thefeeding of sustenance resource according to the current season P in the chosen seasonal variationcycle, as it will be described below. The available resources then allow the growth of preys by ruleri(Xgrowth). Rule ri

(Y growth) governs the direct interactions among preys and predators, and theconsequent growth of predators, while rule ri

(dispersal) describes the action of predators migratingfrom patch i into the dispersal pool. The use of the multiset Y Y in the left-hand side of this ruleallows to account for the predator density in the patch during the process of migration, as will bebetter explained below. Note that, when a predator Y exits patch i, it arrives in the pool as Yi:the subscript is needed in order to distinguish, inside the pool, among predators migrating fromdifferent patches, who then colonize (see rules R0

(colonization) in the set R0) other patches accordingto the mutual distance of its originating patch with respect to the others placed inside µ, as will beexplained below. Rules ri

(Xdeath), ri(Y death) describe the death of individuals for causes which are

not dependent to direct inter-species interactions. Finally, ri1, . . . , r

i5 are the mute rules allowing

the non-maximal consumption of individuals.– R0 contains the subsets of rules

R0(colonization) : Yi

k0c,i,j−→ (Y, inj) | (mi,mj) ∈ E, i, j = 1, . . . , n,

R0(death) : Yi

k0d,i−→ (λ, here) | i = 1, . . . , n,

R0(wandering) : Yi

k0w,i−→ (Yi, here) | i = 1, . . . , n,

for some k0c,i,j , k

0d,i, k

0w,i ∈ R+, for all i, j = 1, . . . , n. The rules in the subset R0

(colonization) describethe process of colonization of patches j, j = 1, . . . , n, by predators Yi, i = 1, . . . , n, which migratedfrom patch i. Note that, when entering a patch, a predator Yi looses its subscript and returns equalto Y , since now it is no more necessary to know from which patch it was coming from. Rules inR0

(wandering) describe the life spent by predators inside the dispersal pool during the migration.

In [1] we considered a feeding process for metapopulations of a purely stochastic type, that is, ateach step a random number (chosen in a fixed interval [M1,M2]) of objects A were created inside eachpatch to simulate the availability of resources. Here we extend that process to consider more generalsituations where the availability of resources can periodically vary according to seasonality. Thus, weare able to model both natural landscapes, where different weather conditions or environmental qualitycan influence the breeding seasonality, and “artificial” landscapes, where populations are constantlyfed by humans.

Formally, we consider the feeding process as governed by a cycle of different phases (or seasons),which can correspond to an increasing, decreasing, stationary or fixed resource availability. Thus,let Cycle = (P1, . . . , Pν) be an ordered sequence (of length ν) of phases P1, . . . , Pν . A phase Pj ischaracterized by means of a resource trend and a sequence of hj (consecutive) evolution steps. Thetrend of any phase Pj determines the feeding strategy used during the duration of the phase:

1. increasing trend (IT): at each step of phase γj = Pj , (Nj + (l − 1)∆j) + α copies of resource Aare produced inside each patch, for some Nj ∈ N, l = 1, . . . , hj , and α randomly chosen in a set[N ′

j , N′′j ], N ′

j , N′′j ∈ N;

Page 33: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Seasonal Variance in P System Model for Metapopulations 33

2. decreasing trend (DT): at each step of phase γj = Pj , (Nj − (l − 1)∆j) + α copies of resource Aare produced inside each patch, for some Nj ∈ N, l = 1, . . . , hj , and α randomly chosen in a set[N ′

j , N′′j ], N ′

j , N′′j ∈ N;

3. stationary trend (ST): at each step of phase Pj , γj = Nj + α copies of resource A are producedinside each patch, for some Nj ∈ N, and α randomly chosen in a set [N ′

j , N′′j ], N ′

j , N′′j ∈ N;;

4. fixed trend (FT): at each step of phase Pj , γj = Nj copies of A are produced inside each patch,for some Nj ∈ N.

In other words, during an increasing (decreasing) phase, the number γj of A’s produced inside eachpatch is given by the sum of two terms: a fixed feeding base Nj , which is increased (decreased) stepby step by a value ∆j , and a stochastic part determined by the number α that is randomly chosen ina given set. The feeding base is used to characterize the season, the stochastic term to better describereal landscapes and situations. Instead, during a stationary phase we have a constant feeding baseplus a stochastic term, while the fixed strategy considers only a constant feeding where stochasticityplays no role (it will not be used in the rest of this work).

A feeding cycle can be iterated several times during any simulation to model how the breed-ing behavior of populations is seasonally controlled, and to find out the emergent dynamics of themetapopulation. We remark that in the simulations reported in Section 3.2 we will consider a com-mon feeding cycle for all patches, though we might consider cases where (distant) patches can undergodifferent feeding processes, or similar cycles but with different lengths.

Now, we describe how to evaluate the probabilities of some rules in order to let the dynamics ofthe system depend upon the geometrical structure of the patches, the initial population multisets andthe patch densities (thus implicitly considering also the patch areas).

The application of the rules R0(colonization) in the pool has to depend upon the cost between the

patch from which the individuals migrated and the patch that the individuals will colonize, meaningthat the higher the cost between two patches, the lower the probability for reaching one of them oncethe other has been left. Thus, let r : Yi −→ (Y, inj) be a rule in R0

(colonization), and let wi,j be the costassociated to the edge mi,mj ∈ E between patch i and patch j, then p(r) = 1/wi,j · p(r), wherep(r) is the term given by Equation 1.

The rules inside the patches governing the growth and dispersal have to depend on the localpopulations densities:

– for ri(Xgrowth) we choose p(ri

(Xgrowth)) = (1/σi)kiXg(|A|mi

|X|mi), meaning that the higher the

number of preys inside the patch, the higher the competition for food resources among them,hence the lower their growth;

– for ri(Y growth) we use p(ri

(Y growth)) = (1/σi)kiY g(|X|mi

|Y |mi), meaning the the higher the number

of preys, the higher the growth of predators, but if too many predators are present inside thepatch, then their growth is reduced;

– for ri(dispersal) we use p(ri

(dispersal)) = (1/σi)kid(|Y |mi |Y − 1|mi)/2, meaning that the higher the

number of predators, the higher the probability that they will leave the patch in search of newcolonizable patches for better survival chances.

3.2 Simulation of feeding strategies

In [1] we investigated some emergent metapopulation behaviors, such as the effects of stochasticbreeding, the processes of migration and colonization, the role of mute rules and different level ofparallel application of rules, the isolation of patches and the effect of different areas on the patchdynamics, etc.

In all the following simulations we will consider a membrane structure with four elementary mem-branes, spatially arranged by means of a complete underlying undirected graph. The edge costs areω1,2 = ω3,4 = 10, ω1,3 = ω1,4 = ω2,3 = ω2,4 = 30. The areas of patches are σ1 = 1, σ2 = 0.35, σ3 = 1.5,σ4 = 2.5. Hence, the membrane structure here describes a landscape with two couples of close patches(m1 and m2, m3 and m4), differing for area dimensions. The initial multisets are set to pi = qi = 1000,for all i = 1, . . . , 4.

Page 34: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

34 D. Besozzi, P. Cazzaniga, D. Pescini, G. Mauri

The values fixed for the simulations are kiXg = 0.75, ki

Y g = 0.075, kiXd = 0.1, ki

Y d = 7.5, kid =

0.075, ki1 = ki

2 = 0.25, ki3 = 0.9, ki

4 = 2.5, ki5 = 0.025, for all i = 1, . . . , 4, while inside the pool they

are k0c,i,j = 1, k0

d,i = 0.8, k0w,i = 0.2, according to the method explained in Section 2 for the choice of

constants of membrane rules and of additional mute rules.

0

200

400

600

800

1000

1200

1400

0 200 400 600 800 1000

Steps

AXY

0

200

400

600

800

1000

1200

0 200 400 600 800 1000

Steps

AXY

Fig. 1. Pure stochastic feeding strategy inside patch 2 (left) and 4 (right).

In order to show the difference in the metapopulation behavior emerging from a pure stochasticfeeding trend (as used in [1]) and from periodic feeding cycles, we have simulated the previous systemwhere different feeding strategies are applied, namely:

1. a stochastic feeding with set [150, 250];2. a cycle of length 2, with P1 of IT type, P2 of DT type, h1 = h2 = 50 steps (thus one complete

cycle is 100 steps long), N1 = N2 = 50, ∆1 = ∆2 = 2 and random sets equal to [0, 200] for bothphases;

3. a cycle of length 4, with P1 of IT type, P2 of ST type, P3 of DT type, P4 of ST type, h1 = · · · =h4 = 100 steps (thus one complete cycle is 400 steps long), bases equal to 50, ∆1 = ∆3 = 1 andrandom sets equal to [0, 200] for all phases;

4. a cycle of length 8, with P1 of IT type, P2 of ST type, P3 of IT type, P4 of ST type, P5 of DTtype, P6 of ST type, P7 of DT type, P8 of ST type, h1 = · · · = h8 = 100 steps (thus one completecycle is 800 steps long), bases equal to 50, ∆1 = ∆3 = ∆5 = ∆7 = 1 and all random sets equal to[0, 200].

For space limits, we only report the behavior of populations X and Y inside patches 2 and 4,having the smallest and the biggest area, respectively. In Figure 1 we show the rapid oscillations inpreys and predators multiplicities due to stochastic feeding and dispersal; the effect of different areavalue is clearly detectable from the average size of populations inside the two patches.

In Figure 2 we show, instead, how the behavior of the populations changes when considering peri-odic feeding cycles of different length. Namely, the various feeding trends of the phases characterizingeach cycle can be distinguished among each other patch, as well as the role played by the patch areasover the population size (again, patch 2 - in left column - is compared to patch 4 - in right column).

Finally, in Figure 3 we represent the phase space of patch 4 for the stochastic feeding strategy (leftside) and for the feeding cycle of length 4 (right side). Here it can be better seen how, in the firstcase, the population size varies in a small range of values, while in the second case there is an effectivelarge variation due to the seasonal differences in the availability of resources, which first influences thepreys growth and, in a cascade of events, have also effect over predator growth and dispersal.

4 Final Remarks

Dynamical probabilistic P systems were initially introduced with the aim of modeling the dynamicsof biochemical and cellular systems, though with this work we have shown that their underlyingstructure and functioning are feasible also for the investigation of biological systems at a higher degreeof complexity, such as ecological systems. In particular, we have considered metapopulation systemswith 2-species predator-prey dynamics, anyway ecological systems where interaction of more species

Page 35: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Seasonal Variance in P System Model for Metapopulations 35

0

200

400

600

800

1000

1200

1400

0 200 400 600 800 1000

Steps

AXY

0

200

400

600

800

1000

1200

0 200 400 600 800 1000

Steps

AXY

0

200

400

600

800

1000

1200

1400

0 200 400 600 800 1000

Steps

AXY

0

200

400

600

800

1000

1200

0 200 400 600 800 1000

Steps

AXY

0

200

400

600

800

1000

1200

1400

0 200 400 600 800 1000

Steps

AXY

0

200

400

600

800

1000

1200

0 200 400 600 800 1000

Steps

AXY

Fig. 2. Cycle of length 2 (top), cycle of length 4 (middle), cycle of length 8 (bottom) inside patch 2 (left sides)and patch 4 (right sides).

300

400

500

600

700

800

900

1000

1100

300 400 500 600 700 800 900 1000

Y

X

patch 4

100

200

300

400

500

600

700

800

900

1000

1100

100 200 300 400 500 600 700 800 900 1000

Y

X

patch 4

Fig. 3. Phase spaces of patch 4 with stochastic feeding (left) and with a feeding cycle of length 4 (right).

Page 36: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

36 D. Besozzi, P. Cazzaniga, D. Pescini, G. Mauri

occur can be described as well, and also metapopulation dynamics different from the Lotka-Volterramodel can be defined.

In this paper, we have analyzed how periodic resource feeding strategies can influence metapopula-tion dynamics, by comparing several systems where increasing, decreasing, stationary or purely feedingstochastic phases are defined inside the patches. Namely, we have shown how the seasonal variance cantransform the basic Lotka-Volterra dynamic inside each patch into a more complex dynamic, wherethe different phases of a feeding cycle can be identified.

References

1. D. Besozzi, P. Cazzaniga, D. Pescini, G. Mauri: Modelling metapopulations with stochastic membranesystems. Submitted.

2. L. Bianco, F. Fontana, G. Franco, V. Manca: P systems for biological dynamics. In [4], 81–126.3. P. Cazzaniga, D. Pescini, F.J. Romero-Campero, D. Besozzi, G. Mauri: Stochastic approaches in P systems

for simulating biological systems. Fourth Brainstorming Week on Membrane Computing. Sevilla, January30 - February 3, 2006, Volume I (M.A. Gutierrez-Naranjo, Gh. Paun, A. Riscos-Nunez, F.J. Romero-Campero, Eds.), RGNC REPORT 02/2006, Fenix Editora, Sevilla, 2006, 145–164.

4. G. Ciobanu, Gh. Paun, M.J. Perez-Jimenez, Eds.: Applications of Membrane Computing. Springer–Verlag,Berlin, 2006.

5. D.T. Gillespie: Exact stochastic simulation of coupled chemical reactions. Journal of Physical Chemistry,81 (1977), 2340–2361.

6. I. Hanski: Metapopulation dynamics. Nature, 396 (1998), 41–49.7. A. Hastings, C.L. Wolin: Within-patch dynamics in a metapopulation. Ecology, 70, 5 (1989), 1261–1266.8. V.A.A. Jansen: The dynamics of two diffusively coupled predator-prey populations. Theoretical Population

Biology, 59 (2001), 119–131.9. V.A.A. Jansen, A.L. Lloyd: Local stability analysis of spatially homogeneous solutions of multi-patch

systems. Journal of Mathematical Biology, 41 (2000), 232–252.10. R. Levins: Some demographic and genetic consequences of environmental heterogeneity for biological

control. Bulletin of the Entomology Society of America, 71 (1969), 237–240.11. A. Moilanen: SPOMSIM: software for stochastic patch occupancy models of metapopulation dynamics.

Ecological Modelling, 179 (2004), 533–550.12. J.D. Murray: Mathematical Biology. I: An Introduction. Springer-Verlag, New York, 2002.13. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61, 1 (2000), 108–143.14. Gh. Paun: Membrane Computing. An Introduction. Springer–Verlag, Berlin, 2002.15. D. Pescini, D. Besozzi, G. Mauri: Investigating local evolutions in dynamical probabilistic P sys-

tems. Seventh International Symposium on Symbolic and Numeric Algorithms for Scientific Computing(SYNASC’05), IEEE Computer Press, 2005, 440–447.

16. D. Pescini, D. Besozzi, G. Mauri, C. Zandron: Analysis and simulation of dynamics in probabilistic Psystems. Proceedings of 11th International Workshop on DNA Computing, DNA11, London, ON, Canada,June 6-9, 2005 (A. Carbone, N. Pierce, eds.), LNCS 3892, Springer-Verlag, Berlin, 2006.

17. D. Pescini, D. Besozzi, G. Mauri, C. Zandron: Dynamical probabilistic P systems. International Journalof Foundations of Computer Science, 17, 1 (2006), 183–204.

18. A.D. Taylor: Metapopulations, dispersal, and predator-prey dynamics: an overview. Ecology, 71, 2 (1990),429–433.

19. The MPI standard website http://www.mcs.anl.gov/mpi/index.html.20. The P systems Web Page http://psystems.disco.unimib.it/.21. Y. Suzuki, J. Takabayashi, H. Tanaka: Investigation of tritrophic system in ecological systems by using

an artificial chemistry. Journal of Artificial Life and Robotics, 6 (2002), 129–132.22. W.W. Weisser, V.A.A. Jansen, M.P. Hassell: The effects of a pool of dispersers on host-parasitoid systems.

Journal of Theoretical Biology, 189 (1997), 413–425.

Page 37: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Applications of Membrane Systems inDistributed Systems

Aneta Binder, Rudolf Freund, Georg Lojka, Marion Oswald

Institute of Computer Languages, Vienna University of TechnologyFavoritenstr. 9, Wien, Austria

ani,rudi,marion,[email protected]

Abstract. Based on the biological model of cell-to-cell communication proposed by A. Rus-tom et al. in [12], we investigate the possibilities to apply P systems with dynamic channelstransporting membrane vesicles for describing processes in distributed systems.

1 Introduction

Membrane systems were introduced in 1998 by Gh. Paun in [10] as a parallel distributed model ofcomputation abstracted from cell functioning. In a membrane structure (that can be represented asa tree in P systems or as an arbitrary graph in the more general case of tissue P systems), multisetsof objects can evolve according to given evolution rules. The monograph [11] gives an excellent intro-duction to the whole area of P systems. For the actual status of research we refer the reader to the Psystems webpage [15].

Like in the biological model of cell-to-cell communication proposed by A. Rustom et al. in [12], in[8] (like in tissue P systems, e.g., see [9]), cells are able to dynamically form connections (channels ornanotubes in the sense of [12] and [14]) between them according to specific constraints, possibly relyingon some attributes assigned to the membranes of the cells as well as on their contents, were considered.In contrast to other models of P systems, there multisets of elementary objects are transported inmembrane vesicles through nanotubes (channels). The transport of a membrane vesicle through ananotube between two cells may depend on the contents of the membrane vesicle itself as well as onthe objects contained in the two cells connected by this nanotube, on the specific attributes assignedto the cell membranes and the membrane of the vesicle to be transported through the nanotube aswell as on the specific state of the nanotube (channel).

To model these biological systems as described by A. Rustom et al., in [8] P systems with dynamicchannels transporting membrane vesicles were considered to work in the asynchronous mode (anarbitrary number of rules that do not interfere with each other can be carried out in parallel in onederivation step) or in the sequential mode (exactly one rule is carried out in one derivation step);for an overview on P systems working in the asynchronous or in the sequential mode see [7]. On theother hand, for simulating models of distributed systems and mobile software agents we can also useP systems with dynamic channels transporting membrane vesicles working in the maximally parallelmode (which means that as many processes as possible are carried out in parallel). In this paperwe continue the work started with [1] and [2] and discuss the potentials of this model of P systems(membrane systems) for modeling and simulating (processes in) distributed systems. P systems formodeling algorithms in distributed computing had already been considered in [4] together with thedescription of a program for simulating some examples of that variant of P systems, and in [5] avariant of P systems called client-server P systems for modeling molecular processes was described.

After pointing out some features of distributed systems in the second section, in the third section wedescribe the model of P systems with dynamic channels transporting membrane vesicles (which wereshown to be computationally complete in [8]). The potentials of this model of P systems (membranesystems) for modeling and simulating (processes in) distributed systems are discussed in the fourthsection. A short summary concludes the paper.

Page 38: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

38 A. Binder, R. Freund, G. Lojka, M. Oswald

2 Elements of Distributed Systems

A distributed system consists of a collection of autonomous, geographically dispersed computing en-tities (e.g., see [3]) which are equipped with suitable software and are connected by some suitablecommunication medium (LAN, WAN or the Internet); the software enables the single computers(components) of the network to coordinate their activities and share their resources of the system -hardware, software and data.

Various hardware and software architectures are commonly used for distributed computing: client-server, 3-tier architecture (the client intelligence is moved to a middle tier so that stateless clientscan be used), n-tier architecture (typically used for web applications forwarding their requests toother enterprise services), tightly coupled (clustered, a set of highly integrated machines runs the sameprocess in parallel, subdividing the task in parts finally put back together to make the final result),peer-to-peer (all responsibilities are uniformly distributed among all machines).

One of the key features of distributed systems is the sharing of resources (see [6]); there are twotypes of models of distributed systems – the client-server model (server processes act as a resourcemanager for a collection of resources of a given type and client processes perform a task requiring accessto some shared hardware and software resources) and the object-based model (each shared resourceis viewed as an object; objects are uniquely identified and may be moved anywhere in the networkwithout changing their identities). In the following we will only consider the client-server model.

The components of a distributed system are both logically and physically separated [6]; they mustcommunicate in order to interact. Communication between a pair of processes involves operations inthe sending and the receiving processes which together result in:

1. the transfer of data from the sending process to the receiving process and2. the synchronization of the receiving process with the sending process in such a way that both

processes are prevented from continuing until the other process makes an action that frees themboth from this prevention.

The two basic programming primitives send and receive together perform message passing actionsbetween a pair of processes. Each message passing action involves the transmission by the sendingprocess of a set of data values (a message) through a specified communication mechanism (a channelor a port) and the acceptance by the receiving process of the message. The mechanism may besynchronous or blocking, meaning that the sender waits after transmitting the message until thereceiver has performed a receive operation or it may be asynchronous or non-blocking meaning thatthe message is placed in a queue of messages waiting for the receiver to accept them and the sendingprocess can proceed immediately.

The most commonly used patterns of communication in distributed systems are the client-servermodel for communication between pairs of processes and the group multicast communication modelfor communication between groups of cooperating processes. In the following we restrict ourselves tothe client-server model.

The client-server communication model is oriented towards service provision. An exchange consistsof the transmission of a request from a client process to a server process, the execution of the requestby the server and the transmission of a reply to the client.

2.1 Send and Receive Operations

Single message passing can be supported by two message communication operations: send and receive,defined in terms of destination and messages. In order for one process to communicate with anotherone, the first process sends a message (a sequence of data items) to a destination and the secondprocess at the destination receives the message. This activity involves the communication of datafrom the sending to the receiving process and may involve the synchronization of the two processes.

Page 39: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Applications of P Systems in Distributed Systems 39

Synchronous and Asynchronous Communication A queue is associated with each messagedestination. Sending processes add messages to queues and receiving processes remove messages fromthem. The communication between the sending and the receiving process may be either synchronousor asynchronous.

In the synchronous form of communication, the sending and receiving processes synchronize atevery message. In this case, both the send and receive are blocking operations. Whenever send isissued, the sending process is blocked until the corresponding receive is issued. On the other hand,whenever receive is issued, the process blocks until a message arrives.

In the asynchronous mode of communication, the use of the send operation is non-blocking suchthat the sending process is allowed to proceed as soon as the message has been copied to a localbuffer and the transmission of the message proceeds in parallel with the sending process. The receiveoperation can have blocking and non-blocking variants. In the non-blocking variant, the receivingprocess proceeds with its program after issuing a receive operation which provides a buffer to be filledin the background, but it must separately receive a notification that its buffer has been filled (eitherby polling or by interrupt).

3 P Systems with Dynamic Channels Transporting Membrane Vesicles

In this section we describe (a special variant of) the general model of P systems as introduced in[8]. Intuitively, we consider cells enclosed by a membrane which allows for communication with theenvironment as well as for dynamically forming connections (channels or nanotubes in the sense ofA. Rustom et al. in [12]) between cells that transport (multisets of) objects enclosed in a membrane(vesicle). We assume the reader to be familiar with the basic elements of formal language theory (e.g.,see [13]) and membrane systems (P systems, e.g., see [11]).

A P system with dynamic channels transporting membrane vesicles (in the following we shall usethe notion P system only) Π is a construct

(O, OT , Q, F, I,R)

where

– O is the set of objects;– OT ⊆ O is the set of terminal objects;– Q is the set of states for the channels between cells;– F is the set of attributes assigned to a cell or a vesicle;– I specifies the initial configuration of the system;– R is a set of different types of rules of one of the following forms:

• evolution rules for objects in a cell;• evolution rules for objects in a vesicle;• communication rules for exchanging (multisets of) objects between a vesicle in a cell and the

surrounding cell;• rules initializing (opening) a channel (nanotube) between two cells;• rules transporting a vesicle through a channel (nanotube) between two cells;• rules closing a channel (nanotube) between two cells;• rules generating a new vesicle in a cell;• rules for including a vesicle in another vesicle;• rules eliminating a vesicle in a cell;• rules eliminating the membrane of a vesicle and expelling its contents into the surrounding

cell.

We do not go into the details of specifying rules allowing us to dynamically change the componentsand the structure of the network. Moreover, we should like to point out that all the sets in the generalmodel described above need not be finite, e.g., the set of objects may be the set of strings over a givenalphabet, and the set of attributes may be infinite, too. If the set of rules is infinite, we assume that

Page 40: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

40 A. Binder, R. Freund, G. Lojka, M. Oswald

given an instance of the P system, we are able to effectively list the rules applicable to this instanceand to decide whether a set of rules chosen so far is maximal or not.

The P system Π may work in different derivation modes: in the maximally parallel mode, foreach derivation step we choose a subset of the rules in R that cannot be extended any more; in theasynchronous mode, an arbitrary number of rules is applied in parallel; in the sequential mode, exactlyone rule is applied.

The general model of P systems with dynamic channels transporting membrane vesicles introducedabove is very powerful from a theoretical point of view, i.e., not all possible features are needed toobtain computational completeness (see [8]). Moreover, we may use these P systems for differenttasks, e.g., as generating devices or as accepting devices (P automata), but also for modeling differentprocesses carried out by other devices; here we will focus on this dynamic aspect. For our purposes, eventhe sequential derivation mode is suitable. In the following, we shall give a more detailed descriptionof the rules needed in the examples elaborated in the succeeding section.

3.1 Cells, Vesicles, and Communication Through Channels

Here we explain the different objects and processes which will be used in our model. The objects canbe

– cells, which can act as clients or servers,– vesicles, which are the packages of data sent through channels between different cells, and– channels, which are the communication medium.

Cells can be described by their labels and attributes. The list of attributes of a cell can be definedin form of the context-free grammar G1 with

G1 = (V, T, P, CellAttributes) ,V = CellAttributes, Name, Path, State

∪ Domain, LowerChar, UpperChar,NumT =

busy, free, A, ... , Z, a, ... , z, 0, ..., 9, ., ,, (, )

andP = CellAttributes → (Name , Path, State),

State → busy|free,Path → .Domain,Domain → Name,

Name → LowerChar,|UpperCharLowerChar|UpperChar|Num,

LowerChar → a|...|z,UpperChar → A|...|Z,Num → 0|...|9.

For better readability, terminal objects are underlined in the definitions of the context-free gram-mars G1 and G2.

The grammar specifies the attributes, which consist of Name, Path, and State. Name is theidentifier of the cell and Path gives the current membership to a network indicated by its domainname. The attribute State defines whether a cell is free (free) for creating a new channel to anothercell or not (busy).

In addition to attributes, each cell has a label describing its function in the network, that is givenby the finite set of the following reserved strings:

CellLabels = server, client

Page 41: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Applications of P Systems in Distributed Systems 41

Similar to cells, vesicles can be characterized by their attributes and labels. Attributes can berepresented by the context-free grammar G2 with

G2 = (V, T, P, V esicleAttributes) ,V = V esicleAttributes, V Name, V Path

∪ Domain, LowerChar, UpperChar,NumT =

A, ... , Z, a, ... , z, 0, ..., 9, ., , , [ , ], (, )

andP = V esicleAttributes → (V Name,V Path),

V Path → [Name .Domain].[Name.Domain],

Domain → Name,V Name → Name,Name → LowerChar

|UpperCharLowerChar|UpperChar|Num,LowerChar → a|...|z,UpperChar → A|...|Z,Num → 0|...|9.

The grammars G1 and G2 differ in the definition of Path. A cell contains only the domain namein this attribute, but the V Path of a vesicle implies the whole name Name and the domain of thesending cell concatenated with a dot symbol such that the receiving cell knows where the vesicle iscoming from.

The label of a vesicle describes the kind of content enclosed by its membrane and is given by thefinite set of the following reserved strings:

V esicleLabels = data, resdescr, invoc, result

A vesicle with the label invoc contains two vesicles one containing data (labeled as data) and theother one containing a resource description (labeled as resdescr). This corresponds to an invocationfrom one computer to another. If the invocation needs some computation, the result is transmittedback as a vesicle labeled result.

Channels are dynamically formed connections between cells (sender and receiver) allowing for thetransport of vesicles. The sending cell tries to open a channel to the receiving cell but has to take carethat only one uni-directional channel between a cell and another one can be established at the sametime. Another important restriction is the limitation of the quantity of channels which can co-exist,given by the number n. Moreover, these n channels at the beginning are available being in the stateclosed.

Channel(ChannelState)Name of Sender.Name of Receiver.i

The state of a channel (ChannelState) can be set to:

– request: This state is set by the sending cell which has the intention to create a channel.– open: The channel has been opened.– transport: The vesicle is already on its way through the channel.– received: After the vesicle has reached the destination cell, the receiver sets the channel state to

received.– closed: At the end of the transportation process the channel is closed by the sending cell.

The label of a channel consists of three components:

– the name of the sender,– the name of the receiver,– the number of the channel between sender and receiver (i).

Page 42: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

42 A. Binder, R. Freund, G. Lojka, M. Oswald

3.2 Rule Definitions

In this subsection we describe the rules which are needed for creating and deleting channels, generatingand transporting vesicles, and dissolving the membranes of these vesicles to expel their contents. More-over, for all following rules we assume that CellLabel ∈ CellLabels and V esicleLabel ∈ V esicleLabels.

Rules for Communicating Membrane Vesicles. The process of communicating vesicles betweentwo different cells in our model cannot be described with only one rule – we need three rules whichdefine the opening of a channel, the transport of the vesicle through the open channel and finally theclosing of this channel after the successful communication. The attribute Path contains the informationabout the network domain in which the cells are situated.

The first rule is called Rc,c,i; it consists of three subrules which are defined as follows:

Rc,c,i.1 : channel(closed)x.y.i [α](Name,Path,free)

client →channel

(request)x.y.i [α′](Name,Path,busy)

CellLabel

Rc,c,i.2 : channel(request)x.y.i [β](Name,Path,free)

CellLabel →channel

(open)x.y.i [β′](Name,Path,free)

CellLabel

Rc,c,i.3 : channel(open)x.y.i [α′′ [ϕ](V Name,V Path)

V esicleLabel ](Name,Path,busy)CellLabel →

channel(transport)x.y.i ([ϕ](V Name,V Path)

V esicleLabel ) [α′′′](Name,Path,free)CellLabel

wherex is the name of the sender,y is the name of the receiver,i is the number of the channel,Path contains the domain name followed by a dot,V Path contains the name of the sending cell

followed by a dot and the domain name.First the sender cell wants to open a channel with number i and sets the state of the channel to

request, such that the receiver cell knows about the intention of an incoming communication, andthe sender sets its own state to busy. If the cell state of the receiving cell is free, it sets the stateof the channel to open and at the same time changes its own state to busy. As long as the cells arebusy, the cells are inhibited to request another channel at the same time. After the sending cell hasrecognized that the channel has been opened, it sets its cell state to free, whereafter the receivingcell sets back its state to free again, too.

Theoretically, the process steps of the receiving cell seeing the request for opening a specific channel,getting busy, setting the channel to the state open and to change back from state busy to free again,can be captured by only one rule, i.e., Rc,c,i.2. Moreover, the sending cell when seeing the channel tohave become open, not only changes its state back from busy to free, but with the Rule Rc,c,i.3 alsochanges the state of the channel to transport at the same time putting a vesicle into the channel.

As in distributed systems, not all connections between cells (computers) are allowed. For example,in client-server systems clients cannot communicate directly with each other. The communication isdone via the server in the network. To apply the rules above, the label of the cells plays an importantrole because it indicates the function of the cells (client, server). There are three different types ofconnections:

– Client to Client: is not allowed– Client to Server: In this case it is necessary that both, client and server, are in the same domain

(same Path).– Server to Server: This type of connection is always possible. The attribute Path can contain

the same or different domain names.

Page 43: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Applications of P Systems in Distributed Systems 43

The next rule for communicating membrane vesicles is Rc,c,t and describes the transport of thevesicle through the established channel and is defined as follows:

Rc,c,t : channel(transport)x.y.i ([ϕ](V Name,V Path)

V esicleLabel ), [α](Name,Path,State)CellLabel →

channel(sent)x.y.i [β′ [ϕ′](V Name,V Path)

V esicleLabel ](Name,Path,State)CellLabel

After the rule Rc,c,i.3 has been successfully applied, the state of the channel is transport which meansthat the vesicle now is inside the channel. When the vesicle arrives at the receiver, the receiver setsthe channel state to sent so the sending cell knows that the transmission has been successful. Thechannel is closed by applying the following rule:

Rc,c,d : channel(sent)x.y.i [β′ [ϕ′](V Name,V Path)

V esicleLabel ](Name,Path,State)CellLabel →

channel(closed)x.y.i [β′ [ϕ′](V Name,V Path)

V esicleLabel ](Name,Path,State)CellLabel

Rules to Manipulate Membrane Vesicles

Generating Membrane Vesicles Before it is possible to send a vesicle to another cell, it is necessaryto generate it by the application of the rule:

Rg : [α](Name,Path,State)CellLabel → [α′ [ϕ](V Name,V Path)

V esicleLabel ](Name,Path,State)CellLabel

The are three different cases of creating the vesicle content ϕ – eventually together with the remainingcontents of the generating cell:

1. generate: [α α′′](Name,Path,State)CellLabel →

[α′ α′′[ϕ](V Name,V Path)V esicleLabel ](Name,Path,State)

CellLabel

2. copy: [α α′′](Name,Path,State)CellLabel →[α′ α′′[α′′ ϕ](V Name,V Path)

V esicleLabel ](Name,Path,State)CellLabel

3. move: [α α′′](Name,Path,State)CellLabel →[α′[α′′ ϕ](V Name,V Path)

V esicleLabel ](Name,Path,State)CellLabel

These three variants of creating a vesicle are not sufficient to send the required part of the requesteddata with the aid of membrane vesicles. Therefore we extend our model with a special method to createthe contents of a vesicle by using the computable functions f and g:

[α](Name,Path,State)CellLabel

f,g→ [α′[ϕ](V Name,V Path)V esicleLabel ](Name,Path,State)

CellLabel

with the effect of yielding

[α′fα(α′′)[ϕ gα(α′′)](V Name,V Path)V esicleLabel ](Name,Path,State)

CellLabel

from [α α′′](Name,Path,free)CellLabel .

We should like to mention that we are not interested in the details of the representation of databeing sent through channels to other cells.

Dissolving vesicles To expel the whole contents of a vesicle we dissolve its membrane. The rule toachieve this is defined as follows:

Rδ : [α[ϕ](V Name,V Path)V esicleLabel ](Name,Path,State)

CellLabel → [α′ ϕ′](Name,Path,State)CellLabel

Deleting Membrane Vesicles If the vesicle is not needed anymore, it can be deleted as a wholewith the following rule:

Rd : [α [ϕ](V Name,V Path)V esicleLabel ](Name,Path,State)

CellLabel → [α′](Name,Path,State)CellLabel

Page 44: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

44 A. Binder, R. Freund, G. Lojka, M. Oswald

Rule to Communicate between a Membrane Vesicle and its Surrounding Cell We havealready defined the communication between two different cells via channels. Furthermore, there isanother way of communication in our model where it is possible to exchange some contents betweenthe membrane vesicle and its surrounding cell. This rule is defined as follows:

Rc,v : [α[ϕ](V Name,V Path)V esicleLabel ](Name,Path,State)

CellLabel →[α′ [ϕ′](V Name,V Path)

V esicleLabel ](Name,Path,State)CellLabel

4 Communication Processes

In this section we show how we can specify communication processes in distributed systems withinour framework of P systems with dynamic channels transporting membrane vesicles (P systems forshort).

4.1 Communication between Cells

The communication in the model of P systems used in this paper is based on the scientific findings fromthe field of cell biology described in [12]. Vesicles can be seen as packages of information transportedfrom one cell to another one. The communication medium is represented by channels created by oneof the communicating cells (the sender). If such a channel exists, the information packed into a vesiclecan be sent to the receiving cell. The sending process and the receiving process are controlled bythe setting of channel states, and they are not happening in an exactly synchronous or asynchronousway, but as a mixture of both. Like in the synchronous mode there is some kind of “handshake”indicated by the states. Nevertheless both cells can proceed their computations independently (like inthe asynchronous mode).

In the following example we describe in more detail how two cells can communicate with eachother:

The client cell with the attribute Name A wants to send some information to the server cellwith Name B. Thus cell A has to pack the data into a vesicle and has to name it by setting the vesicleattribute V Name and the label which identifies the type it should be. Moreover, it has to set thevesicle attribute V Path to its own Name and Path, concatenated with a dot. In this case V Name isVes1 and V Path now is A.Net1.

&%

'$(A,.Net1,free)

client

α′′

&%

'$(B,.Net1,free)

server

βmϕ

channel(request)A.B.1

Fig. 1. Requesting the opening of a closed channel.

To be able to transmit the data, a channel has to be requested by cell A to cell B. At first, cell A,being in the state free, has to request the opening of the channel by setting the state of the channelto request (Figure 1). Cell B now permits the opening of the channel or refuses it (this means thatthe membranes of the cells can or cannot connect to each other). This permission depends on the stateof cell B which can be free or busy. In the case B is free, B can permit the opening of the channelchannelA.B.i and the channel gets the state open (Figure 2).

Cell A now can send the vesicle, and the state of the channel changes to transport (Figure 3).After the package of information – the vesicle – has reached the destination cell B (Figure 4),

B changes the channel state to sent. The channel now can be closed (the membranes of the cellsdisconnect), indicated by the channel state closed (Figure 5).

Page 45: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Applications of P Systems in Distributed Systems 45

&%

'$(A,.Net1,busy)

client

α′′

&%

'$(B,.Net1,free)

server

β′mϕ

channel(open)A.B.1

Fig. 2. The opening of a channel.

&%

'$(A,.Net1,State)

client

α′′′

&%

'$(B,.Net1,State)

server

β′mϕ -

channel(transport)A.B.1

Fig. 3. Transporting the vesicle.

At the same time, cell B can dissolve the membrane of the received vesicle to get the informationcontained in it.

This process of communication between cells can be described by applying the following sequenceof rules:

1. Creating the vesicle containing data

[α]A,.Net1,freeclient

f,g→ [α′[ϕ]Ves1,[A.Net1]data ]A,.Net1,freeclient

2. Opening the channel and transporting the data vesiclechannel

(closed)A.B.1 [α′](A,.Net1,free)client → channel

(request)A.B.1 [α′′](A,.Net1,busy)client ;

channel(request)A.B.1 [β](B,.Net1,free)server → channel

(open)A.B.1 [β′](B,.Net1,free)server ;

channel(open)A.B.1 [α′′ [ϕ](Ves1,[A.Net1])data ](A,.Net1,busy)client →

channel(transport)A.B.1 ([ϕ](Ves1,[A.Net1])data ), [α′′′](A,.Net1,free)client ;

channel(transport)A.B.1 ([ϕ](Ves1,[A.Net1])data ) [β′](B,.Net1,free)server →

channel(sent)A.B.1 [β′′ [ϕ](Ves1,[A.Net1])data ](B,.Net1,free)server ;

channel(sent)A.B.1 [α′′′ ](A,.Net1,free)client → channel

(closed)A.B.1 [αIV ](A,.Net1,free)client .

3. Dissolving the membrane of the vesicle and expelling its contents

[β′ [ϕ](Ves1,[A.Net1])data ](B,.Net1,free)server → [β′′ ϕ′](B,.Net1,free)server

&%

'$(A,.Net1,State)

client

α′′′

&%

'$(B,.Net1,State)

server

β′′ mϕ

channel(sent)A.B.1

Fig. 4. Reaching the receiver cell.

Page 46: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

46 A. Binder, R. Freund, G. Lojka, M. Oswald

&%

'$(A,.Net1,State)

client

αiv

&%

'$(B,.Net1,State)

server

β′′ mϕ′

channel(close)A.B.1

Fig. 5. Closing the channel.

4.2 Communication in a Client-Server System

In the following example we describe a communication in a client-server system using P systems as amodel for distributed systems.

We here consider a client-server system which contains four clients (B, C, D, E), and the server A.All are members of the domain Net1. Let us assume that a client B has a task (a computation) toperform but has not got the resources needed for fulfilling the task. So cell B sends an invocation tothe server including the resource description and the data required for this computation (Figure 6).

½¼

¾»(A,.Net1,free)

serverα′

½¼

¾»(B,.Net1,free)

clientβv

½¼

¾»(D,.Net1,free)

client

½¼

¾»(C,.Net1,free)

client½¼

¾»(E,.Net1,free)

client

¡¡

¡¡¡

¡¡

¡¡¡i(Ves12,[B.Net1]) ¡¡µ

Fig. 6. Sending an invocation vesicle (labeled invoc) to the server.

Moreover, the required resources are in the possession of two other clients: cell C and D. Becausethe direct communication between two clients in client-server systems is not possible, the server hasto take control of the following computation and communication process flow. Thus, it disposes of aspecial resource allocation table, in which all resources of the present clients in the network are listed.In the following the server subdivides the task into two subtasks and sends the invocation includingthe data to each cell disposing of the needed resources for each subtask (Figure 7).

After the partial results of the computation have become available for the server (Figure 8), itcombines them to the final result and sends it forward to cell B (Figure 9).

Here we do not go into the details of the resource allocation, its management and the sharing ofresources in a distributed system.

This process of performing the given task and the communication in the client-server system canbe described by applying the following sequence of rules:

1. Creating the vesicle containing data and resource description by the client B

At first the cell B has to create two vesicles containing the data and the information about theneeded resources for the computation.

[β](B,.Net1,free)client →[β′[δ](Ves1,[B.Net1])data ](B,.Net1,free)client ;

Page 47: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Applications of P Systems in Distributed Systems 47

½¼

¾»(A,.Net1,free)

serveri

(Ves2,[A.Net1])

½¼

¾»(B,.Net1,free)

client ½¼

¾»(D,.Net1,free)

client

½¼

¾»(C,.Net1,free)

client½¼

¾»(E,.Net1,free)

client

¡¡

¡¡

¡¡

¡¡i(Ves1,[A.Net1])¡¡µ

@@

@@@

@@

@@@

@@R

Fig. 7. Dividing the task into two subtasks and sending two vesicles labeled invoc to C and D.

½¼

¾»(A,.Net1,free)

serveri

(VesResultD,[D.Net1])

½¼

¾»(B,.Net1,free)

client ½¼

¾»(D,.Net1,free)

client

½¼

¾»(C,.Net1,free)

client½¼

¾»(E,.Net1,free)

client

¡¡

¡¡

¡¡

¡¡i(VesResultC,[C.Net1])¡¡ª

Fig. 8. Receiving the partial results from C and D, enclosed by the vesicles labeled result.

½¼

¾»(A,.Net1,free)

server

½¼

¾»(B,.Net1,free)

client ½¼

¾»(D,.Net1,free)

client

½¼

¾»(C,.Net1,free)

client½¼

¾»(E,.Net1,free)

client

¡¡

¡¡¡

¡¡

¡¡¡i(Res,[A.Net1])

¡¡ª

Fig. 9. Transmitting the result back to B.

[β′](B,.Net1,free)client → [β′′[ρ](Ves2,[B.Net1])resdescr ](B,.Net1,free)client ;

[β′′](B,.Net1,free)client → [β′′′[ϕ](Ves12,[B.Net1])invoc ](B,.Net1,free)client .

After this, the generated vesicles, V es1 and V es2, have to be packed into the invocation vesicleV es12.

[ϕ](Ves12,[B.Net1])invoc [δ](Ves1,[B.Net1])data → [ϕ′[δ](Ves1,[B.Net1])data ](Ves12,[B.Net1])invoc ;

Page 48: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

48 A. Binder, R. Freund, G. Lojka, M. Oswald

[ϕ′](Ves12,[B.Net1])invoc [ρ](Ves2,[B.Net1])resdescr →[ϕ′′[ρ](Ves2,[B.Net1])resdescr ](Ves12,[B.Net1])invoc .

We here use a rule more complex than the rules used so far, where a vesicle includes another one.2. Opening the channel and transporting the invocation vesicle to the server A

The client B opens a free channel (in this case with number 1) to send the invocation vesicle tothe server cell A.

channel(close)B.A.1 [β′′′](B,.Net1,free)client → channel

(request)B.A.1 [βIV ](B,.Net1,busy)client ;

channel(request)B.A.1 [α](A,.Net1,free)server → channel

(open)B.A.1 [α′](A,.Net1,free)server ;

channel(open)B.A.1 [βIV [ϕ′′](Ves12,[B.Net1])invoc ](B,.Net1,busy)client →

channel(transport)B.A.1 ([ϕ′′](Ves12,[B.Net1])invoc ) [βV ](B,.Net1,free)client ;

channel(transport)B.A.1 ([ϕ′′](Ves12,[B.Net1])invoc ) [α′](A,.Net1,free)server →

channel(sent)B.A.1 [α′′ [ϕ′′′](Ves12,[B.Net1])invoc ](A,.Net1,free)server ;

channel(sent)B.A.1 [βV ](B,.Net1,free)client → channel

(close)B.A.1 [βV I ](B,.Net1,free)client .

3. Dissolving the membrane of the vesicle and expelling its contentsAfter the successful communication with the client B, the server A dissolves the membrane ofthe invocation vesicle and in the following the membrane of the vesicle containing the resourcedescription.

[α′′ [ϕ′′′](Ves12,[B.Net1])invoc ](A,.Net1,free)server → [α′′′ϕ](A,.Net1,free)server .

4. Creating the vesicles containing the data and resource description by the server A forsubtasks to be performed by the clients C and DThe server divides the invoked task into two subtasks and creates two new invocation vesicles.Both contain, as a copy, the original data sent from client B and the information about theneeded resources for each forbidden of the computation. We should like to mention that theattribute V Path for the data vesicle changes its value to [B.Net1].[A.Net1].

[δ](Ves1,[B.Net1])data → [δ1](Ves1,[B.Net1].[A.Net1])data [δ2]

(Ves1,[B.Net1].[A.Net1])data ;

[ϕ](A,.Net1,free)server → [ϕ′[µ1](Ves1,[A.Net1])invoc ](A,.Net1,free)server ;

[ϕ′](A,.Net1,free)server → [ϕ′′[µ2](Ves2,[A.Net1])invoc ](A,.Net1,free)server ;

[ϕ′′](A,.Net1,free)server → [ϕ[ν1](Rs1,[A.Net1])resdescr ](A,.Net1,free)server ;

[ϕ](A,.Net1,free)server → [ϕ′[ν2](Rs2,[A.Net1])resdescr ](A,.Net1,free)server ;

[µk](Vesk,[A.Net1])invoc [δk](Vesk,[B.Net1].[A.Net1])

data →

[µ′k[δk](Vesk,[B.Net1].[A.Net1])data ](Vesk,[A.Net1])

invoc , k ∈ 1, 2;

[µ′k](Vesk,[A.Net1])invoc [νk](Rsk,[B.Net1].[A.Net1])

resdescr →

[µ′′k [νk](Rsk,[B.Net1].[A.Net1])resdescr ](Vesk,[A.Net1])

invoc , k ∈ 1, 2.

As the following steps mainly include only repetitions of processes already described by sequencesof rules as above, we only give a short description of the remaining processes to finish the taskand omit the corresponding sequences of rules.

Page 49: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Applications of P Systems in Distributed Systems 49

5. Opening of the channel and transporting the invocation vesicles to the clients C andD expecting the partial results of the computationAfter the server has created the invocation vesicles Ves1 and Ves2, both can be transportedthrough the channels to the clients C and D in the way already described above.

6. Dissolving the membrane of the vesicle, expelling its contents and performing ofsubtasks by the clients C and DAfter the successful communication, both clients dissolve the membranes of the vesicles and per-form the computation of the subtasks. If all the partial results are available, the clients send themback to the server A applying the rules for communication described above. The partial resultshave to be sent back from the two clients to server A, each of them packed into a vesicle labeledresult.

7. Creating the vesicle containing the result of the whole computationAfter the server has got the two partial results from the two clients, it assembles them to the finalresult of the computation and creates a vesicle containing this final result.

8. Opening of the channel and transporting the result vesicle to the client BThe final result of the computation is sent back to cell B, which was the initiator of the task.

5 Conclusion

In this paper we have used a biologically motivated model of P systems to specify and describe commu-nication processes in distributed systems. P systems with dynamic channels transporting membranevesicles can model the initialization of a communication channel between two computers and thetransfer of data by simulating these processes in our model of P systems as the dynamic opening ofa channel between two cells and the transport of membrane vesicles through the channel. In the fu-ture, we will not only use this model of P systems to describe communication processes in distributedsystems, but also to investigate strategies for resource allocation in grids etc.

Acknowledgements. The work of Marion Oswald is supported by FWF-project T225-N04.

References

1. A. Binder, G. Lojka: Diploma thesis, draft, Technical Univ. of Vienna, 2006.

2. A. Binder, R. Freund, G. Lojka, M. Oswald: Membrane systems as a model for distributed computing. InH. Fernau, ed., Proc. Theorietag 2005, 2005.

3. F. Berman, G.C. Fox, A.J.G. Hey: Grid Computing – Making the Global Infrastructure a Reality. Wiley,2003.

4. G. Ciobanu, R. Desai, A. Kumar: Membrane systems and distributed computing. In: Gh. Paun, G. Rozen-berg, A. Salomaa, C. Zandron, eds.: Membrane Computing: International Workshop, WMC-CdeA 2002,Curtea de Arges, Romania, August 19-23, 2002. Revised Papers, LNCS 2597, Springer, Berlin, 2003,187–202.

5. G. Ciobanu, D. Dumitriu, D. Huzum, G. Moruz, B. Tanasa: Client-server P systems in modeling molecularinteraction. In Gh. Paun, G. Rozenberg, A. Salomaa, C. Zandron, eds., Membrane Computing: Interna-tional Workshop, WMC-CdeA 2002, Curtea de Arges, Romania, August 19-23, 2002. Revised Papers,LNCS 2597, Springer, Berlin, 2003, 203–218.

6. G. Coulouris, J. Dollimore, T. Kindberg: Distributed Systems - Concepts and Design. Addison-Wesley,2002.

7. R. Freund: Asynchronous P systems. In G. Mauri, Gh. Paun, C. Zandron, eds., Proceedings WMC5,Milano, Italy, 2004, 12–28.

8. R. Freund, M. Oswald: P systems with dynamic channels transporting membrane vesicles. Proc. AROB’05(International Symposium on Artificial Life and Robotics 2005), February 4–6, 2005, Oita University,Beppu, Oita, Japan (2005).

9. C. Martin-Vide, Gh. Paun, J. Pazos, A. Rodriguez-Paton, Tissue P systems. Theor. Comp. Sci., 296(2003), 295–326.

10. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61 (2000), 108–14.

11. Gh. Paun: Membrane Computing. An Introduction. Springer–Verlag, Berlin, 2002.

Page 50: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

50 A. Binder, R. Freund, G. Lojka, M. Oswald

12. A. Rustom, R. Saffrich, I. Markovic, P. Walther, HH. Gerdes: Nanotubular highways for intercellularorganelle transport. Science, 303 (2004), 1007–1010.

13. A. Salomaa, G. Rozenberg, eds.: Handbook of Formal Languages. Springer, Berlin, 1997.14. R.D. Salter, S.C. Watkins: Functional connectivity between immune cells mediated by tunneling nan-

otubes. Immunity, 23 (2005), 309–318.15. The P Systems Web Page: http://psystems.disco.unimib.it.

Page 51: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Compositional Asynchronous Membrane Systems ?

Cosmin Bonchis1, Cornel Izbasa1, Gabriel Ciobanu2

1 Research Institute “e-Austria” Timisoara, [email protected], [email protected]

2 Romanian Academy, Institute of Computer ScienceBlvd. Carol I no.8, 700505 Iasi

[email protected]

Abstract. This paper presents an algorithmic way of building complex membrane systemsby coupling elementary membranes. Its application seems particularly valuable in the case ofasynchronous membrane systems, since the resulting membrane system remains asynchronous.The composition method is based on a handshake mechanism implemented by using antiportrules and promoters.

1 Introduction

Membrane computing is inspired by the structure, functioning and organization of living cells. Itaims to abstract computing ideas and models from living cells. An important feature in membranecomputing is the processing of multisets of symbol objects in a localized manner via evolution rulesencapsulated in compartments. The rules are applied in a maximally parallel and nondeterministic way.The compartments are delimited by membranes, and the communication between them is essential.

A membrane system, also called a P system, consists of a hierarchy of membranes which do notintersect, with a distinguishable membrane (called skin) surrounding them all. The membranes producea demarcation between regions or compartments. Regions contain multisets of objects, evolution rules,and possibly other membranes. Only rules in a region delimited by a membrane act on the objectsin that region. The multisets of objects from a region correspond to the “chemicals swimming in thesolution in the cell compartment”, while the rules correspond to the “chemical reactions possible inthe same compartment”. The membrane systems are parallel and distributed. A detailed descriptionof the P systems can be found in [6].

In this paper we study the assembly of asynchronous compositional membrane systems from sim-pler ones. The way of composing P systems is inspired by developments in the field of asynchronousprocessor design. We present a computation model for asynchronous P systems of asynchronous pro-cessors. We consider the most general class of asynchronous systems, namely the delay-insensitivesystems. We outline the assembly of delay-insensitive complex computational P systems from simplefunctional components.

P systems are easily assembled into delay-insensitive systems if we allow antiport rules and promot-ers. Other ways can be considered, resulting in much more complicated communication and control-transfer rules, or more inefficient systems.

Asynchronous Processors

Classical synchronous processors assume a clock signal that generates a rhythmic heartbeat for itscomponents, synchronizing their functioning phases. While this makes the processor design easier,there is a penalty to be paid in terms of power consumption, and functioning speed. A superior powerconsumption is caused by the clock distribution mechanism, and also by the fact that the functioningprocessor is never at energetic equilibrium. That is, even if there are no input signals, the processorstill performs idle instructions (e.g., global clock signal). While the idle instructions require less powerthan regular instructions, over a longer period of time a large portion of the power can be lost throughthese idle loops.? This work has been partially supported by the research grants CEEX 47/2005 and CNCSIS 632/2006.

Page 52: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

52 C. Bonchi, C. Izbasa, G. Ciobanu

By contrast, asynchronous processors, also known as clockless processors, do not have a clocksignal to synchronize their components. In asynchronous processors, when an input appears, thecomputational resources necessary for its processing are activated component by component untilthe input is completely processed. If the asynchronous processor has no input, the processor is atenergetic equilibrium and does not consume power. Thus, a lot of energy is saved, making asynchronousprocessors particularly useful for low-power embedded applications, e.g. wireless sensor networks.

Another advantage of asynchronous processors is the fact that each component can operate at max-imal speed, because there is no need to synchronize on a clock tick with possibly slower components.This may prove useful in fast real-time systems, e.g. automotive systems.

The disadvantage of asynchronous processors is the much more complicated design technique.Examples of fully asynchronous processors are described and designed in [8].

2 Asynchronous P Systems

In this section we define asynchronous membrane systems. Before we define the asynchronous compo-sitional P systems, we briefly review some notions and concepts related to asynchronous systems.

Definition 1. Delay-insensitive systems are systems in which there are no assumptions about theprocessing time of the components (modules), or about the transmission time along the connections.

Delay-insensitive systems are true asynchronous systems. Since in practical electronic designs theyincur a severe efficiency penalty, quasi-delay-insensitive systems are usually preferred. However, giventhe abstract nature of P systems, we consider the delay-insensitive compositional P systems, becausethey have the highest degree of asynchronicity and, as a consequence, also the highest modularity.This means that some components may take a longer or much shorter time to process an input (eventhe same input), and still the end result is the same. In other words, the system reacts consistentlyto the input. The power of delay-insensitive systems lies in the fact that once a component performsa certain operation correctly, it can be plugged in the system if the input and output are operatedand interpreted in the required way. This allows the usage of a black-box development model in orderto obtain a clean, modular design of the system. We consider the delay-insensitive P systems as animportant class of asynchronous compositional P systems.

Definition 2. A delay-insensitive P system (DIPs) is a delay-insensitive system for which all thecomponents are membrane systems.

Remark 1. The connections between components in a DIPs can be implemented using antiport rulesfor usual P systems, or synapses between cells for tissue P systems. Another approach can using braneoperations in the context of Brane calculus [3].

Definition 3. Two P systems Π and Π ′ are result-equivalent if the output of the both P systems isidentical.

Proposition 1. The delay-insensitive P system produces the same result for the same input wheneverwe replace any component membranes with a result-equivalent one.

Proof. Since delay-insensitive P systems are a class of delay-insensitive systems with membrane sys-tems as components, by Definition 1 we can replace any component membranes with a result-equivalentone and the resulting DIPs is result-equivalent with the initial one.

Similarly to the electronic implementation of delay-insensitive systems, a handshake mechanism isneeded to achieve the cooperation between components.

Definition 4. A handshake mechanism is an exchange of signals between two devices when commu-nications begin, in order to ensure synchronization which precedes the information transfer.

Page 53: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Compositional Asynchronous Membrane Systems 53

Simply, whenever an input appears for a certain component, it does its part of processing handlingthe output further to the next component(s).

Asynchronous systems manifest a high degree of robustness, because new components can betested separately and added to the complex system by ensuring only the correct input and outputinterpretation. However the delay-insensitive systems incur a significant overhead, because the systemmust ensure that no input enters a component until the possibly pending processing in the componentis finished. This can be resolved by adding a handshake mechanism between successive componentsto ensure that each component obeys the sequence of states presented in Figure 1.

START

Compute

Transmit

ReadyHandshake

Handshake

Fig. 1. FSM for a component

Our approach uses an antiport handshake and signal-promoters (somehow similar to those pre-sented in [4]) for the data and control transfer, to propagate execution and input through the entirecomputational pathway. In the theory of P systems, an antiport [7] rule has the form (a, out; b, in)which means that an object a from the current region and an object b from the outer region can crossthe delimiting membrane at the same time. A promoter [2] is a special object in a region which by itspresence makes it possible to use a rule from its associated promoted rules set; e.g. a → b |p meansthat the rule a → b is usable in the presence of the multiset p.

By using antiport rules we can realize the synchronisation between successive components throughthe exchange of signal promoters which further facilitate the data and control transfer. In the followingwe present an algorithm implementing the data and control transfer between successive components.

3 Composition Using Antiport Handshakes

Consider an n-tuple of functional P systems, each computing the values of a function. A complexsystem is constructed by aggregating these P systems by introducing each skin membrane inside theprevious one. Membrane i computes the result of a function fi : Mi → fi(Mi), where Mi represents amultiset, and i = 0, n− 1.

Definition 5. A compositional functional P system as described before is valid if Img(fi) ⊆ Dom(fi+1),for i = 0, n− 2.

The complex P system in Figure 2 computes the result of fn−1 . . . f0 applied to the inputrepresented by the multiset in membrane 0 (the input membrane), and the results are obtained inmembrane n− 1 (the output membrane).

Let us consider the membrane i, where i = 0, n− 1. It must follow the evolution steps given bythe following algorithm:

Page 54: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

54 C. Bonchi, C. Izbasa, G. Ciobanu

(Input)0

1

n−1(Output)

i+1

i

Fig. 2. Sample P system “circuit”

Algorithm 1 The delay-insensitive (DI) algorithm1. an antiport handshake ensures that the membrane i− 1 finished the transmission;2. membrane i performs its computation phase;3. an antiport handshake ensures that the membrane i +1 is ready to receive, and the membrane i is ready

to transmit;4. membrane i transmits its output as input to the membrane i + 1;5. membrane i goes back to ready state.

Remark 2. If i = 0, then step 1 is missing; if i = n − 1, then steps 3 and 4 are missing because i isthe last membrane on the path (the output membrane).

Further, we consider the data and control transfers between membranes on the pathway. Based on theabove remarks we study the following special cases:

3.1 Data and control transfers between membranes

Now we consider the data and control transfers between membranes. Based on the above remarks, westudy the following special cases:

Intermediate membranes When i = 1, n− 2 and so we do not work with the first or the lastmembrane, the data and control transfer proceeds as in Figure 3. The order of the processes in themembranes is revealed by reading them from top to bottom. Following the DI algorithm, after themembrane i gets its input from the previous one, it performs its partial computation and is readyto communicate with membrane i + 1, as soon as this membrane is ready for communication. Afterthe antiport handshake between i and i + 1 is completed, i starts transmitting its output as input toi + 1, and after completion it enters into the ready state. Control is now transferred to membranei + 1, and here the computation is performed now. Then a handshaking with the next membraneis attempted. Note that there are two types of rules and objects, those related to communication(antiport handshake, data transfer, and end transmission), and rules which perform computationinside a membrane.Here is the communication pattern, presented separately:

Page 55: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Compositional Asynchronous Membrane Systems 55

Fig. 3. From membrane i to membrane i + 1

– SyniFinEnd → Syni+1, which fires after computation in i is finished; it creates an object Syni+1

which serves as a connection request to the membrane i + 1;

– antiport handshake: (Readyi+1, out;Syni+1, in) in the inner membrane;

– data transfer, represented by the (possibly multi-step) evolution of the multiset DATAi into themultiset DATAi inside membrane i + 1 and the object End in the current membrane:

DATAi ⇒∗ (DATAi, ini+1)End|Readyi+1 .

By this notation we understand that each rule which facilitates the transition is promoted by theobject Readyi+1.

– end of transmission is realized by Readyi+1End → (Fin, ini+1)Readyi, a rule in the outer mem-brane which deletes the promoter Readyi+1 and the object End (which signals the end of datatransmission), and sends the signal-promoter Fin to the inner membrane as termination of thedata transfer step. This rule also resets membrane i to the ready state.

First and last membranes. Data and control transfer for the first and the last membrane ispresented in Figure 4 and Figure 5, respectively.

The input membrane 0 has no antiport handshake, since the input is stored directly into it, leavingonly the computation and transmission phases.The rule INPUT ⇒∗ DATA0|Fin means that the input multiset evolves, in 0 or more steps, to anintermediate result of the computation. This result is then sent to membrane 1 via the transmissionrules. Please note that the promoter Fin should be present in the membrane at the start of itsfunctioning, supplied at the end of input insertion.

Page 56: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

56 C. Bonchi, C. Izbasa, G. Ciobanu

Fig. 4. From the first membrane to the second

Fig. 5. End of the pathway

Remark 3. The last membrane n− 1 lacks a transmission phase (see Figure 5).

If desired, a read-output phase could be added at the end of computation, which means that weneed to process the results from the output membrane before the creation of another output.

3.2 System composition guide

While the former subsection deals with the design of the asynchronous protocol, handshake, data andcontrol transfer, this one provides details on the usage requirements. The user of the asynchronousprotocol can design such an asynchronous chain of computational P systems (computational pathway)by fulfilling the following requirements:

1. The user must provide the goal-specific rule sets for computation and transmission. These rulesmust not use the control objects Syn, Ready, End, Fin with two exceptions which are detailedat 3. The rules are also confined to using objects from and creating objects in the embeddingmembrane.

Page 57: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Compositional Asynchronous Membrane Systems 57

2. The user must ensure that the function computed by an asynchronous P system receives the properinput from the previous component, and produces the proper output for the next component.

3. The user must ensure that the computation and transmission phases produce an End object upontermination. Without the first requirement the system is not asynchronous, since the computationcould be limited to a single step (or a fixed number of steps), while without the second one, thetransmission to the next component could be limited to a single step, so the delay-insensitivesystem becomes only a speed-insensitive system.

We have used the above asynchronous protocol to compose some previously studied P arithmeticsystems to create composite P systems able to compute arithmetic expressions.

3.3 Computing arithmetic expressions

As a case study we developed the P systems for computing the arithmetical expression n · (m+p). Wehave two different implementations based on two multiplier P systems, with or without promoters, aswere presented in [1]. The two variants for multiplication have different time complexity, the one withpromoters being faster.

an bm u

0

au −> u>a|b −> bd

(a) Multiplier with promoters

an bm u

eu −> dbubv −> dev

0

av −> uau −> v>

>

(b) Multiplier without promoters

Fig. 6. Multiplier P systems

We developed the P system for computing n·(m+p) based on its reverse polish notation ·n+mp. Tocompute this expression we must compose an adder P system with a multiplier P system.The results(the objects y represent the value of sum m+p) from the adder are sent to the multiplier as an input.After the computation phase, the transmission phase is started. We ensure that the computation inthe inner membrane does not start until the transmission phase is finished. If the input is receivedin the multiplier, in the computation phase, the product n · y will be computed and the value of theexpression n · (m + p) is obtained.

In Figure 7 the product n ·y is computed with a multiplier P system with promoters of complexityO(n). In Figure 8 this product is computed with a multiplier P system without promoters of complexityO(n · m). The results for both complex P systems are the same. The difference between the two Psystems is given by the computation rules of membrane 1.

The difference between the two P systems is given by the computation rules of membrane 1. Wecan observe that if a component is replaced by another one which implements the same operationwith a different complexity, the compositional P system produces the same result, because it is adelay-insensitive system.

Theorem 1. The compositional P systems constructed with the delay-insensitive algorithm are delay-insensitive systems.

Proof. Consider a compositional P system

Π = (V, µ,w0, w1, . . . , wi, . . . , wn−1,(R0, ρ0), (R1, ρ1), . . . , (Ri, ρi), . . . , (Rn−1, ρn−1), n− 1),

µ = [0[1. . . [i. . . [n−1]n−1 . . .]i . . .]1]0,Ri = Rh

i

⋃Rc

i

⋃Rt

i.

Page 58: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

58 C. Bonchi, C. Izbasa, G. Ciobanu

Fig. 7. Multiplier with promoters

Fig. 8. Multiplier without promoters

If Ri is the set of evolution rules in membrane i, by Rhi we denote the rules which implement handshake

phase, by Rci we denote the rules which implement the transmission phase, and by Rt

i we denote therules which implement the computation phase.

In Π we replace the membrane i with another membrane i′ with a different, but result-equivalentcomputation and transmission phases, and we show that the resulting system Π ′ is result-equivalentto Π. In Π ′, we have Ri′ = Rh

i ∪Rci′ ∪Rt

i′ where Rci′ ∪Rt

i′ is result-equivalent to Rci ∪Rt

i.According to Definition 3, the systems Π and Π ′ are result-equivalent whenever the output of the

membrane i is the same as the output of the membrane i′, and membrane i + 1 has the same inputin Π and Π ′. Since the computational pathway in Π and Π ′ up to i− 1 and starting from i + 1 areidentical, the same result is obtained in membrane n − 1 in both Π and Π ′. This holds for all i, sofrom Proposition 1 we get that Π is a delay-insensitive P system.

4 Conclusion

A great number of variants of synchronous P systems were explored, starting with transitional Psystems, P systems with active membranes, with membrane polarization, with symport/antiport rules,with promoters and inhibitors and many others. Asynchronous P systems were also explored, but they

Page 59: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Compositional Asynchronous Membrane Systems 59

do not refer to asynchronous compositional P systems as they are defined here. By using antiportrules as a handshake mechanism, we define the asynchronous compositional P systems in a simpleway. This is even simpler than in electronics, where in asynchronous systems there are two or fourphase asynchronous interface protocols, whereas in our approach, antiport rules allow a single phasehandshake protocol.

The delay-insensitive systems are somehow similar to the systems described by M. Cavaliere andD. Sburlan under the names “time-free”, “clock-free” or “time-independent” [5]. It will be useful tocompare these systems, and see what are the common results, as well as the differences between thesesystems.

References

1. C. Bonchis, G. Ciobanu, C. Izbasa: Encodings and arithmetic operations in membrane computing. In J-Y.Cai, S.B. Cooper, A. Li (Eds.): Theory and Applications of Models of Computation LNCS 3959, Springer,2006, 621–630.

2. P. Bottoni, C. Martin-Vide, Gh. Paun, G. Rozenberg: Membrane systems with promoters/inhibitors. ActaInformatica, 38 (2002), 695–720.

3. L. Cardelli: Abstract machines of systems biology. Transactions on Computational Systems Biology III,LNBI 3737, Springer, 2005, 145–168.

4. M. Cavaliere: Towards asynchronous P systems. Pre-proceedings WMC5, Milano, 2004, 161–173.5. M. Cavaliere, D. Sburlan: Time-independent P systems. In Membrane Computing WMC5, LNCS 3365,

Springer, 2005, 239–258.6. Gh. Paun: Membrane Computing. An Introduction. Springer, 2002.7. A. Paun, Gh. Paun: The power of communication: P systems with symport/antiport. New Generation

Comput., 20 (2002), 295–306.8. I.E. Sutherland: Micropipelines. Communications ACM, 32 (1989), 720–738.

Page 60: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Computing Along the Axon

Haiming Chen1, Tseren-Onolt Ishdorj2, Gheorghe Paun2,3

1 Computer Science Laboratory, Institute of SoftwareChinese Academy of Sciences, Beijing, 100080 China

[email protected] Research Group on Natural Computing

Department of CS and AI, University of SevillaAvda Reina Mercedes s/n, 41012 Sevilla, Spain

[email protected] Institute of Mathematics of the Romanian Academy

PO Box 1-764, 014700 Bucharest, [email protected], [email protected]

Abstract. We consider a special form of spiking neural P systems, called axon P systems,corresponding to the activity of Ranvier nodes of neuron axon, and we investigate the languagegenerative power of these devices.

1 Introduction

Recently, ideas from neural computing based on spiking were incorporated in membrane computing inthe form of spiking neural P systems (for short, SN P systems), see [1], [4] [5], etc. In SN P systems,the main “information-processor” is the neuron, while the axon is only a channel of communication,without any other role – which is not exactly the case in neuro-biology.

In the present paper we introduce a class of SN-like P systems, where the computation is donealong the axon (this time we ignore the neurons). Actually, a sort of linear SN P system is considered,corresponding to the Ranvier nodes of axons. Spikes are transmitted along the axon, to the left and tothe right, from a node to another node, and an output is provided by the rightmost node. Specifically,a symbol bi is associated with a time unit when i impulses (spikes) exit the system, and thus a stringis associated with a computation.

The relationships of the families of languages generated in this way with families from Chomskyhierarchy are investigated, then axon P systems with states are considered. Several open problemsand research topics are formulated.

2 The Axon as an Information Processor

We briefly describe here the neural cells structure and functioning and those features that are ofinterest from a computational point of view and from which we will abstract the (mathematical)features of our computing devices.

The nervous system consists of about 1010 nerve cells, the so-called neurons. Each of these neuronsis connected to about 10000 other neurons via synapses.

This gigantic network of neurons and synapses is placed in a small portion of human brain. Neuralnetworks are generally considered as information-processing systems, i.e., as systems which operatetransformations of their inputs in order to produce outputs.

Brain cells communicate in a process that begins with an electrical signal and ends with a neuro-transmitter binding to a receptor on the receiving neuron. It lasts less than a thousandth of a second,and is repeated billions of times daily in each of the human brain’s neurons. The main part of theaction takes place inside the secreting cell. The basic transmitting unit in the nervous system is theneuron. The neuron is not a homogeneous integrative unit but is (potentially) divided in many sub-integrative units, each one with the ability of mediating a local synaptic output to another cell orlocal electro-tonic output to another part of the same cell. Neurons are considered to have 3 main

Page 61: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Computing Along the Axon 61

parts: a soma, the main part of the cell where the genetic material is present and life functions takeplace; a dendrite tree, the branches of the cell from where the impulses come in; an axon, the branchof the neuron over which the impulse (or signal) is propagated. The branches present at the end of theaxons form the terminal tree. An axon can be provided with a structure composed by special sheaths.These sheaths are involved in molecular and structural modifications of axons needed to propagateimpulse signals rapidly over long distance. The impulse in effect jumps from node to node, and thisform of propagation is therefore called saltatory conduction. It is an efficient mechanism that achievesmaximum conduction speed with a minimum of active membrane, metabolic machinery, and fiber size.There is a gap between neighboring myelinated regions that is known as the node of Ranvier, whichcontains a high density of voltage-gated Na+ channels for impulse generation. When the transmittingimpulses reach the node of Ranvier or junction nodes of dendrite and terminal trees, or the end bulbsof the trees, it causes the change in polarization of the membrane. The change in potential can beexcitatory (moving the potential toward the threshold) or inhibitory (moving the potential away fromthe threshold).

The impulse transmission through a neuron follows this path: from dendrite to soma to axon toterminal tree, and then to synapse. If different impulses reach at the same time a certain node, then itmight happen that the combined effects of the excitation and inhibition may cancel each other. Oncethe threshold of the membrane potential is reached, an impulse is propagated along the neuron or tothe next neuron.

Some of the previously mentioned ideas will be incorporated (abstracted) in our computing model,defined in Section 4. More details about neural biology, can be found in the classical book [9], andabout information processes taking place alongg the axon in [8].

3 Formal Language Theory Prerequisites

We assume the reader to be familiar with basic language and automata theory, e.g., from [6] and [7],so that we introduce here only some notations and notions used later in the paper. For an alphabetV , V ∗ denotes the set of all finite strings of symbols from V ; the empty string is denoted by λ, andthe set of all nonempty strings over V is denoted by V +. When V = a is a singleton, then wewrite simply a∗ and a+ instead of a∗, a+. The length of a string x ∈ V ∗ is denoted by |x|. Ifx = a1a2 . . . an, ai ∈ V, 1 ≤ i ≤ n, then mi(x) = an . . . a2a1.

A Chomsky grammar will be given in the form G = (N, T, S, P ), with N being the nonterminalalphabet, T the terminal alphabet, S ∈ N the axiom, and P the set of rules. We denote by REG, LIN ,CF , CS, RE the families of languages generated by regular, linear, context-free, context-sensitive,and of arbitrary grammars, respectively (RE stands for recursively enumerable languages). By FINwe denote the family of finite languages. The following strict inclusions hold:

FIN ⊂ REG ⊂ LIN ⊂ CF ⊂ CS ⊂ RE.

This is the Chomsky hierarchy.Regular languages are defined (among many other possibilities) by means of regular expressions.

In short, such an expression over a given alphabet V is constructed starting from λ and the symbols ofV and using the operations of union, concatenation, and Kleene +, using parentheses when necessaryfor specifying the order of operations. Specifically, (i) λ and each a ∈ V are regular expressions, (ii) ifE1, E2 are regular expressions over V , then also (E1)∪ (E2), (E1)(E2), (E1)+ are regular expressionsover V , and (iii) nothing else is a regular expression over V . With each expression E we associatea language L(E), defined in the following way: (i) L(λ) = λ and L(a) = a, for all a ∈ V , (ii)L((E1)∪ (E2)) = L(E1)∪L(E2), L((E1)(E2)) = L(E1)L(E2), and L((E1)+) = L(E1)+, for all regularexpressions E1, E2 over V . Non-necessary parentheses are omitted when writing a regular expression,and (E)+ ∪ λ is written in the form (E)∗.

A language L ⊆ V ∗ is said to be regular if there is a regular expression E over V such thatL(E) = L.

We will also invoke below the family MAT , of languages generated by matrix grammars withoutappearance checking (see [2] for details) and the family REC, of recursive languages (languages whosemembership problem is decidable).

Page 62: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

62 H. Chen, T.-O. Ishdorj, Gh. Paun

4 Axon P Systems

We pass directly to considering the device we investigate in this paper, incorporating in the spikingneural P systems framework the way the axon processes information, as described in Section 2.

An axon P system of degree m ≥ 1 is a construct of the form Π = (O, ρ1, . . . , ρm), where:

1. O = a is the singleton alphabet (a is called spike);2. ρ1, . . . , ρm are (Ranvier) nodes, of the form ρi = (ni, Ri), 1 ≤ i ≤ m, where:

a) ni ≥ 0 is the initial number of spikes contained in ρi;b) Ri is a finite set of rules of the form E/ac → (al, ar), where E is a regular expression over a,

c ≥ 1, and l, r ≥ 0, with the restriction that R1 contains only rules with l = 0.

The intuition is that the nodes are arranged along an axon in the order ρ1, . . . , ρm, with ρm at theend of the axon, hence participating to synapses (this is a way to say that node ρm is the output oneof the system).

A rule E/ac → (al, ar) is used as follows. If the node ρi contains k spikes, and ak ∈ L(E), k ≥ c,then the rule can be applied, and this means that c spikes are removed from ρi (thus only k−c remainin ρi), the node is fired, and it sends l spikes to its left hand neighbor and r spikes to its right handneighbor; the first node, ρ1 does not send spikes to the left, while in the case of the rightmost node,ρm, the spikes sent to the right are “lost” in the environment. The system is synchronized, a globalclock is assumed, marking the time for all nodes.

If a rule E/ac → (al, ar) has E = ac, then we will write it in the simplified form ac → (al, ar).In each time unit, if a node ρi can use one of its rules, then a rule from Ri must be used. Since two

rules E1/ac1 → (al1 , ar1) and E2/ac2 → (al2 , ar2), can have L(E1)∩L(E2) 6= ∅, it is possible that two ormore rules can be applied in a node, and in that case, only one of them is chosen non-deterministically.

During the computation, a configuration is described by the number of spikes present in each node.The initial configuration is C0 = 〈n1, . . . , nm〉.

Using the rules as described above, one can define transitions among configurations. A transitionbetween two configurations C1, C2 is denoted by C1 =⇒ C2. Any sequence of transitions starting inthe initial configuration is called a computation. A computation halts if it reaches a configurationwhere no rule can be used. With any computation (halting or not) we associate a sequence of symbolsby associating the symbol bi with a step when the system outputs i spikes, with b0 indicating thesteps when no spike is emitted from ρm to the environment. When the computation is halting, thissequence is finite.

Let us denote by L(Π) the language of strings computed as above by halting computations of thesystem Π and let LAPm(rulek, consp) the family of languages L(Π), generated by systems Π with atmost m nodes, each node having at most k rules, and each of these rules consuming at most p spikes.As usual, a parameter m, k, p is replaced with ∗ if it is not bounded.

5 Examples

We consider here some simple axon P systems, given in the graphical form, following the style ofspiking neural P systems: we specify the nodes along the axon, with two way arrows among them andwith an arrow which exits from the output node, pointing to the environment; in each node we givethe rules and the spikes present in the initial configuration.

Figure 1 presents the initial configuration of the system Π1. We have two nodes, with node ρ2

containing one spike. This spike will circulate among the two nodes as long as the second node usesthe rule a → (a, a). In this way, in every second step one outputs a spike, starting with the firststep of the computation. When node ρ2 uses the rule a → (λ, a) no spike will remain inside and thecomputation halts. Therefore, L(Π1) = (b1b0)∗b1.

Consider also the system Π2 from Figure 2. This time each node starts with a spike, hence thetwo nodes can interchange a spike as long as ρ1 uses the rule a → (λ, a) and ρ2 uses one of the rulesa → (a, a), a → (a, λ). If at some moment the two nodes use simultaneously the other rules, then

Page 63: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Computing Along the Axon 63

º

¹

·

¸

'

&

$

%

-¾ -

1

2

a → (λ, a)

a

a → (a, a)

a → (λ, a)

Fig. 1. The initial configuration of system Π1

'

&

$

%

'

&

$

%

-¾ -

1

2

a

a → (λ, a)

a → (λ, λ)

a

a → (a, a)

a → (a, λ)

a → (λ, a)

a → (λ, λ)

Fig. 2. The initial configuration of system Π2

no spike remains in the system and the computation halts. In this way, one generates all strings inb0, b1+, hence we have L(Π2) = b0, b1+.

Clearly, this system can be extended to a system which generates the language V + for any alphabetV with at least two symbols.

The third example is slightly more complex: Π3, from Figure 3. It has n + 1 nodes, for some givenn ≥ 2. The leftmost node has only one rule, the rightmost node contains the rules a → (a2, a) anda → (λ, a), and all other nodes contain the rules a → (λ, a) and a2 → (a2, λ). We start with onespike in node ρn+1. This spike is moved continuously to the left and to the right of axon, and alwayswhen it arrives in the rightmost node a spike exits the system. The computation can be finished bythe rightmost node, by using the rule a → (λ, a), which leaves the system without any spike inside.Consequently, we have L(Π3) = b1(b2n−1

0 b1)∗ | n ≥ 1.

'

&

$

%

'

&

$

%

º

¹

·

¸¾- -¾. . .

1

a2 → (λ, a)

i

a → (λ, a)

a2 → (a2, λ)¾- -¾ -. . .

n + 1

a

a → (a2, a)

a → (λ, a)

Fig. 3. The initial configuration of system Π3

We do not present further examples, because the results in the next section are also based oneffective constructions of axon P systems.

6 The Generative Power of SN P Systems

6.1 A Characterization of FIN

Lemma 1. LAP1(rule∗, cons∗) ⊆ FIN .

Proof. In each step, the number of spikes present in an axon P system with only one node decreasesby at least one, hence any computation lasts at most as many steps as the number of spikes presentin the system at the beginning. Thus, the generated strings have a bounded length.

Page 64: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

64 H. Chen, T.-O. Ishdorj, Gh. Paun

Lemma 2. FIN ⊆ LAP1(rule∗, cons∗).

Proof. Let L = x1, x2, . . . , xn ⊆ V ∗, n ≥ 1, be a finite language for some V = b1, . . . , bk, k ≥ 1.Let xi = xi,1 . . . xi,ri

, 1 ≤ i ≤ n. For b ∈ V , define index(b) = i if b = bi. Denote αj =∑j

i=1 |xi|, forall 1 ≤ j ≤ n.

An axon P system that generates L is shown in Figure 4.

'

&

$

%

aαn+1

aαn+1/aαn+1−αj → aindex(xj,1)

aαj−t+2/a → aindex(xj,t)

aαj−rj+2 → aindex(xj,rj

)

1 ≤ j ≤ n

-1 ≤ j ≤ n

2 ≤ t ≤ rj − 1, 1 ≤ j ≤ n

Fig. 4. An axon P system generating a finite language

Initially, only a rule aαn+1/aαn+1−αj → aindex(xj,1) can be used, and in this way we non-deterministically chose the string xj to generate. This rule outputs the necessary number of spikesfor xj,1. Then, because αj spikes remain in the neuron, we have to continue with rules aαj−t+2/a →aindex(xj,t), for t = 2, and then for the respective t = 3, 4, . . . , rj − 1; in this way we introduce xj,t, forall t = 2, 3, . . . , rj − 1. In the end the rule aαj−rj+2 → aindex(xj,rj

) is used, which produces xj,rjand

concludes the computation.It is easy to see that the rules which are used in the generation of a string xj cannot be used in

the generation of a string xk with k 6= j. Also, in each rule the spikes consumed are not less than thespikes produced. ut

Theorem 1. FIN = LAP1(rule∗, cons∗).

6.2 Relationships with REG

Theorem 2. REG ⊆ LAP2(rule∗, cons∗).

Proof. For L ∈ REG, consider a grammar G = (N, B, S, P ) such that L = L(G), where N =A1, A2, . . . , An, n ≥ 1, S = An, V = b1, . . . , bm, and the rules in P are of the forms Ai →bkAj , Ai → bk, 1 ≤ i, j ≤ n, 1 ≤ k ≤ m.

Then L can be generated by an axon P system as shown in Figure 5.

'

&

$

%

an

an → (λ, an)

'

&

$

%

a2n

an+i/an+i−j → (an, ak)

for Ai → bkAj ∈ P

an+i → (λ, ak)

for Ai → bk ∈ P

-¾ -

1

2

Fig. 5. An axon P system generating a regular language

Page 65: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Computing Along the Axon 65

In the first step, node ρ2 fires by a rule a2n/a2n−j → (an, ak) (or a2n → (λ, ak)) associated witha rule An → bkAj (or An → bk) from P , and sends k spikes to the environment. In this step node ρ1

also fires and sends n spikes to node ρ2. It will send n spikes back to node ρ2 as long as it receives nspikes from node ρ2.

Assume that in some step t, the rule an+i/an+i−j → (an, ak), for Ai → bkAj , or an+i → (λ, ak),for Ai → bk, is used, for some 1 ≤ i ≤ n, and n spikes are received from node ρ1

If the first rule is used, then n spikes are sent to node ρ1, k spikes are sent to the environment,n+ i− j spikes are consumed, and j spikes remain in node ρ2. Then in step t+1, we have n+ j spikesin node ρ2, and a rule for Aj → bkAl or Aj → bk can be used. In step t + 1 node ρ2 also receives nspikes. In this way, the computation continues.

If the second rule is used, then no spike is sent to node ρ1, k spikes are sent to the environment,all spikes in node ρ2 are consumed, and n spikes are received in node ρ1. Then the computation halts.

In this way, all the strings in L can be generated. utActually, as we will see in the next section, the inclusion above is proper.

6.3 Beyond REG

Theorem 3. LAPm(rulek, consp)−REG 6= ∅ for all m ≥ 2, k ≥ 3, p ≥ 3.

Proof. An example of a non-regular language generated by an axon P system of the complexitymentioned in the theorem is presented in Figure 6. As long as the first rule of R1 is used, no spike isoutput, and node ρ1 accumulates continuously two more spikes. After n steps of this type, node ρ2

will contain 2(n+1)+1 spikes. At any step, node ρ1 can use the rule a(aa)+/a3 → (λ, a2). This bothleaves an even number of spikes in node ρ1, and sends two spikes to node ρ2. The number of spikesfrom node ρ1 becomes 2(n + 2) (it receives four spikes and consumes three). In the next step, we donot output any spike, but from now on we begin output spikes in each step: node ρ1 uses the rule(aa)+/a2 → (λ, a3), thus continuously decreasing by two the number of spikes it contains. This canbe done for n + 2 steps, hence the generated string is bn+2

0 bn+21 , that is, L(Π) = bn

0 bn1 | n ≥ 2. This

is not a regular language. ut

'

&

$

%

a3

a(aa)+/a2 → (λ, a)

a(aa)+/a3 → (λ, a2)

(aa)+/a2 → (λ, a3)

'

&

$

%

a

a → (a4, λ)

a2 → (λ, λ)

a3 → (λ, a)

--¾

1 2

Fig. 6. An axon P system generating a non-regular language

Also much more complex languages can be generated:

Theorem 4. The family LAP2(rule3, cons3) contains non-semilinear languages.

Proof. Consider the axon P system from Figure 7. Assume that we start from a configuration of theform 〈3n + 1, 0〉; initially, this is the case, with n = 1. As long as at least four spikes are present innode ρ1, the rule a(aaa)+/a3 → (λ, a9) is used and it moves all spikes to the second node, multipliedby 3. When we remain with only one spike in node ρ1, we can use one of the other two rules of R1.

If we use a → (λ, a), then in the second node we get a number of spikes of the form 3m + 1, hencethe first rule is applied as much as possible, thus returning the spikes to node ρ1. In the end, we haveto use the rule a → (a, λ) ∈ R2, which makes again the number of spikes from node ρ1 to be of theform 3m + 1 (note that no rule can be applied in any node when the number of spikes is multipleof 3). This process can be iterated any number of times, thus multiplying by 3 the number of spikespresent in node ρ1.

Page 66: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

66 H. Chen, T.-O. Ishdorj, Gh. Paun

'

&

$

%

'

&

$

%

-¾ -

12

a4

a(aaa)+/a3 → (λ, a9)

a → (λ, a)

a → (λ, a2)

a(aaa)+/a3 → (a3, λ)

a → (a, λ)

aa(aaa)+/a3 → (λ, a)

Fig. 7. An axon P system generating a non-semilinear language

At any time, node ρ1 can also use the rule a → (λ, a2) instead of a → (λ, a). This makes thenumber of spikes from node ρ2 to be of the form 3m + 2, hence the rule aa(aaa)+/a3 → (λ, a) shouldbe applied. This rule does not change the 3-arity of the number of spikes, hence it is used as muchas possible. In this way, a spike exits the system in each step, until exhausting the spikes from theoutput node (when only two spikes remain inside, no rule can be used).

This means that after a number of steps when no spike is sent to the environment, we output spikesfor 3n steps, for some n ≥ 1. Therefore, the language L(Π) consists of strings of the form bm

0 b3n

1 , forsome m,n ≥ 1, and for all n ≥ 1 there is such a string in L(Π). Thus, L(Π) is not a semilinearlanguage. ut

The previous language is not in MAT . However, as we will immediately see, this kind of systemshas strong limitations.

Lemma 3. The number of configurations reachable after n steps by an axon P system of degree m isbounded by a polynomial g(n) of degree m.

Proof. Let us consider an axon P system Π = (O, ρ1, . . . , ρm) of degree m, let n0 be the total numberof spikes present in the initial configuration of Π, and denote α = maxl + r | E/ac → (al, ar) ∈Ri, 1 ≤ i ≤ m (the maximal number of spikes produced by any of the rules of Π). In each step of acomputation, each node ρi produces some l and r spikes to br sent to the left and right nodes of nodeρi, respectively. We have l + r ≤ α. Each node can do the same, hence the maximal number of spikesproduced in one step is at most αm. In n consecutive steps, this means at most αmn spikes. Addingthe initial n0 spikes, this means that after any computation of n steps we have at most n0 + αmnspikes in Π, hence the number of configurations are no more than (n0 +αmn)m. This is a polynomialof degree m in n (α is a constants) which bounds from above the number of possible configurationsobtained after computations of length n in Π. utTheorem 5. If f : V + −→ V + is an injective function, card(V ) ≥ 2, then there is no axon P systemΠ such that Lf (V ) = x f(x) | x ∈ V + = L(Π).

Proof. Assume that there is an axon P system Π of degree m such that L(Π) = Lf (V ) for some f andV as in the statement of the theorem. According to the previous lemma, there are only polynomiallymany configurations of Π which can be reached after n steps. However, there are card(V )n ≥ 2n

strings of length n in V +. Therefore, for large enough n there are two strings w1, w2 ∈ V +, w1 6= w2,such that after n steps the system Π reaches the same configuration when generating the stringsw1 f(w1) and w2 f(w2), hence after step n the system can continue any of the two computations. Thismeans that also the strings w1 f(w2) and w2 f(w1) are in L(Π). Due to the injectivity of f and thedefinition of Lf (V ) such strings are not in Lf (V ), hence the equality Lf (V ) = L(Π) is contradictory.

utCorollary 1. The following languages are not in LAP∗(rule∗, cons∗) (in all cases, card(V ) = k ≥ 2):

L1 = xmi(x) | x ∈ V +,L2 = xx | x ∈ V +,L3 = x cvalk(x) | x ∈ V +, c /∈ V.

Page 67: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Computing Along the Axon 67

Note that language L1 above is a non-regular minimal linear one (generated by linear grammarswith only one nonterminal symbol), L2 is context-sensitive non-context-free, and L3 is non-semilinear.

Theorem 6. LAP∗(rule∗, cons∗) ⊆ REC.

Proof. This is a direct consequence of the fact that a string of length n is produced by means of acomputation of length n; thus, given an axon P system Π and a string x, in order to check whetheror not x ∈ L(Π) it is enough to produce all computations of length |x| in Π and to check whetherany of them generates the string x. ut

7 Axon P Systems with States

In this section, we consider a way to control the rule applications by means of node states. Specifically,the rules we are going to use are of the form sE/ac → (s′, al, ar), where s, s′ are states, E is regularexpression, and c ≥ 1, l ≥ 0, r ≥ 0.

Formally, an axon P system of degree m ≥ 1 with states is a construct of the form

Π = (O, Q, ρ1, . . . , ρm),

where:

1. O = a is the singleton alphabet;2. Q is the finite set of states;3. ρ1, . . . , ρm are (Ranvier) nodes, of the form

ρi = (s0, ni, Ri), 1 ≤ i ≤ m,

where:a) s0 ∈ Q is the initial state of node;b) ni ≥ 0, is the initial number of spikes in node;c) Ri is a finite set of rules of the form sE/ac → (s′, al, ar), where s is the current state of the

node, E is a regular expression over a, c ≥ 1, and l, r ≥ 0, with the restriction that R1 containsonly rules with l = 0.

A rule sE/ac → (s′, al, ar) from Ri is applied like the rule E/ac → (al, ar), but only if node ρi isin state s; after the use of the rule, the state of ρi becomes s′.

Let us examine some examples, in order to clarify the definitions and to illustrate the way ourdevices work.

Consider first the simple systemΠ1 = (O, Q, ρ1, ρ2),

where:

1. O = a;2. Q = s0, s1;3. ρ1 = (s0, 1, R1), ρ2 = (s0, 1, R2);

R1 = r1 : s0a+/a → (s0, λ, a);

R2 = r1 : s0a+/a → (s0, a

2, λ);r2 : s0a → (s1, λ, λ); r3 : s1a → (s1, λ, a).

It generates the non-regular context-free language

L(Π1) = bn0 bn

1 | n ≥ 1.

The computation steps are presented in Table 1.Let us observe on Table 1 how the system works. Initially each node contains one spike (a), and

they are in the initial state s0. Node ρ1 has only one rule and it never change its state. In turn, node

Page 68: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

68 H. Chen, T.-O. Ishdorj, Gh. Paun

step a a step a a

1 r1 : a r2 : a b0 1 r1 : a r1 : a b0

2 – r3 : a b1 2 r1 : a2 r1 : a b0

3 r1 : a r2 : a b1

4 – r3 : a b1

step a a step a a

1 r1 : a r1 : a b0 1 r1 : a r1 : a b0

2 r1 : a2 r1 : a b0 2 r1 : a2 r1 : a b0

3 r1 : a3 r1 : a b0 3 r1 : a3 r1 : a b0

4 r1 : a4 r1 : a b0 4 r1 : a4 r1 : a b0

5 r1 : a5 r1 : a b0 . . . . . . . .6 r1 : a6 r2 : a b0 n− 1 r1 : an−1 r1 : a b0

7 r1 : a5 r3 : a b1 n r1 : an r2 : a b0

8 r1 : a4 r3 : a b1 n + 1 r1 : an+1 r3 : a b1

9 r1 : a3 r3 : a b1 n + 2 r1 : an r3 : a b1

10 r1 : a2 r3 : a b1 . . . . . . . .11 r1 : a r3 : a b1 2n− 1 r1 : a r3 : a b1

12 – r3 : a b1 2n – r3 : a b1

Table 1. Some computations in Π1

ρ2 has 2 states and 3 rules; rules r1 and r2 apply in state s0, but once rule r2 is chosen the state ofthe node is changed to s1, and from now on rule r3 should apply until the computation halts.

It is easy to see that the system generates strings of the form bn0 bn

1 in 2n steps, for some n ≥ 1.Let us follow the table. We apply rule r1 in node ρ2 for a number of times, thus generating symbolsb0 (no spike is sent to the environment); in the meantime, node ρ1 accumulates continuously spikesgrowing. Once rule r2 is chosen (suppose this happens in the n-th step), the node changes its state tos1 and starts to send the spikes of node ρ1 to the environment, using the rule r3.

Let us now consider a system with a more sophisticated functioning, namely

Π2 = (O, Q, ρ1, ρ2),

where:

1. O = a;2. Q = s0, s1, s

′1, s2, s

′2, s3, s#;

3. ρ1 = (s0, 0, R1), ρ2 = (s0, 2, R2);R1 = r1 : s0a → (s0, λ, a2),R2 = r1 : s0a

2 → (s#, λ, λ); r2 : s0a+/a → (s3, λ, a);

r3 : s0a+/a → (s3, λ, a2); r4 : s0a

+/a → (s2, a, a2);r5 : s0a

+/a → (s1, a, a); r6 : s1a+/a → (s1, a, a);

r7 : s1a+/a → (s2, a, a2); r8 : s1a

+/a → (s′1, λ, a3);r9 : s′1a

+/a3 → (s3, λ, a3); r10 : s2a+/a → (s2, a, a2);

r11 : s2a+/a → (s′2, λ, a3); r12 : s′2a

+/a3 → (s3, λ, a3);r13 : s3a

+/a → (s3, λ, a3).The language generated is

L(Π2) = bn1 bm

2 bn+m3 | n,m ≥ 0,

which is in CF . Initially, there is no spike in node ρ1, but there are two spikes in node ρ2. The mainwork of controlling the computation is done by node ρ2, while node ρ1 helps to grow spikes in nodeρ2. There are 5 rules in state s0 in node ρ2 and one of them is non-deterministically chosen whencomputation starts. Rule r1 is for word λ (n = m = 0), rule r2 is for b1b3 (n = 1,m = 0), rule r3 isfor b2b3 (n = 0,m = 1), and rule r4 is for words bm

2 bm3 (n = 0,m ≥ 1). Words of the form bn

1 bm2 bn+m

3

Page 69: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Computing Along the Axon 69

(n ≥ 1,m ≥ 0) can be generated if the computation starts by rule r5. For the reader’s exercise, weomit the detailed explanation here.

The last example we present is Π3 = (O, Q, ρ1, ρ2, ρ3), given in a graphical form in Figure 8; itgenerates the non-context-free context-sensitive language bn

1 bn2 bn

0 | n ≥ 1.

a

r1 : s0a → (s#, a2, a2)

'

&

$

%

r2 : s0a+/a → (s′1, λ, a)

r3 : s0a+/a → (s1, λ, a)

r4 : s1a+/a → (s1, λ, a)

r5 : s′1a2/a2 → (s′′2 , a2, a2)

r6 : s′′2a2/a2 → (s0, a2, a2)

r7 : s1a+/a3 → (s2, a

2, a2)

r8 : s2a+/a → (s2, a

2, a2)

'

&

$

%

'

&

$

%

-r1 : s0a+/a → (s0, a, λ)

a

r1 : s0a → (s0, a2, a)

r2 : s0a2/a2 → (s0, λ, a2)

1 23

Fig. 8. An axon P system generating a non-context-free language

step a a step a a

1 – r1 : a r1 : a b1 1 – r3 : a r1 : a b1

2 r1 : a2 a2 r2 : a2 b2 2 – r4 : a2 r1 : a b1

3 r1 : a – – b0 3 – r4 : a3 r1 : a b1

4 – r4 : a4 r1 : a b1

5 – r7 : a5 r1 : a b1

6 r1 : a2 r8 : a4 r2 : a2 b2

a a 7 r1 : a3 r8 : a3 r2 : a2 b2

1 – r2 : a r1 : a b1 8 r1 : a4 r8 : a2 r2 : a2 b2

2 – r5 : a2 r1 : a b1 9 r1 : a5 r8 : a r2 : a2 b2

3 r1 : a2 r6 : a2 r2 : a2 b2 10 r1 : a6 – r2 : a2 b2

4 r1 : a3 – r2 : a2 b2 11 r1 : a5 – – b0

5 r1 : a2 – – b0 12 r1 : a4 – – b0

6 r1 : a – – b0 13 r1 : a3 – – b0

14 r1 : a2 – – b0

15 r1 : a – – b0

Table 2. Some computations in Π3

The string bn1 bn

2 bn0 , n ≥ 1, is generated in 3n steps. Initially, node ρ1 contains no spike, while each

node ρ2 and ρ3 contain only one spike. The computation steps are mainly controlled by node ρ2.There are three rules in node ρ3 (r1, r2, r3) which can be applied in the first step of the computation.If computation starts applying rule r1 (r2, or r3), a word b1b2b0 (resp. b2

1b22b

20 or bn

1 bn2 bn

0 ) will begenerated. The reader can easily trace the computation steps in Table 2.

8 Final Remarks

The present paper has a preliminary character, and many open problems and research topics aboutaxon P systems remain to be considered. We only mention here some of them.

Actually, many questions are suggested by the research about SN P systems. For instance, in thesystems considered here we have no delay associated with the rules, the spikes are emitted immediately

Page 70: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

70 H. Chen, T.-O. Ishdorj, Gh. Paun

after firing the rule – otherwise stated, the delay is always 0. However, an arbitrary delay can beconsidered, as usual in SN P systems. Is this of any help? What about considering infinite sequencesgenerated by axon P systems, as investigated in [5] for SN P systems? Can any interesting class oflanguages or of infinite sequences be characterized/represented in this framework?

Are the hierarchies on the number of nodes infinite? The universality implies the fact that thehierarchies on the number of nodes collapse, but, in view of Theorem 6, our systems are not universal.Another problem related to the non-universality result is to find decidable properties other than themembership one.

What about associating a language in the following way: for each node i we consider a symbol ci

and a configuration 〈k1, . . . , km〉 is described by the string ck11 . . . ckm

m . We obtain a language (strictlybounded). Variant: to take only the strings which describe configurations which send out a spike (thuswe have a selection of strings). Any relation with L systems?

Acknowledgements

The work of the first author was supported by the National Natural Science Foundation of Chinaunder Grants numbers 60573013 and 60421001. The work of the last two authors was supportedby Project TIN2005-09345-C04-01 of the Ministry of Education and Science of Spain, cofinanced byFEDER funds. Useful comments by Kamala Krithivasan are gratefully acknowledged.

References

1. M. Ionescu, Gh. Paun, T. Yokomori: Spiking neural P systems. Fundamenta Informaticae, 71, 2-3 (2006),279–308.

2. J. Dassow, Gh. Paun, Regulated Rewriting in Formal Language Theory, Springer-Verlag, Berlin, 1989.3. Gh. Paun: Membrane Computing – An Introduction. Springer-Verlag, Berlin, 2002.4. Gh. Paun, M.J. Perez-Jimenez, G. Rozenberg: Spike trains in spiking neural P systems. Intern. J. Found.

Computer Sci., to appear (also available at [10]).5. Gh. Paun, M.J. Perez-Jimenez, G. Rozenberg: Infinite spike trains in spiking neural P systems. Submitted,

2006.6. G. Rozenberg, A. Salomaa, eds.: Handbook of Formal Languages, 3 volumes. Springer-Verlag, Berlin, 1997.7. A. Salomaa: Formal Languages. Academic Press, New York, 1973.8. I. Segev, E. Schneidman, Axons as computing devices: basic insights gained from models, J. Physiol.

(Paris), 93 (1999), 263–270.9. G.M. Shepherd: Neurobiology. Oxford University Press, NY Oxford, 1994.

10. The P Systems Web Page: http://psystems.disco.unimib.it.

Page 71: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 72: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 73: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 74: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 75: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 76: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 77: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 78: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 79: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 80: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 81: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 82: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Probabilistic Transitions for P Systems ?

Gabriel Ciobanu, Laura Cornacel

Romanian Academy, Institute of Computer ScienceBlvd. Carol I no.8, 700505 Iasi, Romania

[email protected], [email protected]

Abstract. In this paper we add probabilities to the transition system defining the operationalsemantics of the membrane systems. We use the abstract syntax and the structural operationalsemantics of the P systems given in [1], and add probabilities to the rules and to the communi-cation targets. We take into account the number of possible combinations of rules which can beapplied in a computation step, as well as the probability of consuming the multisets of objects.

1 Introduction

In the last few years people have become aware that biological processes can be described using meansdeveloped by computer scientists to model systems of interacting components. This permits simula-tion of system behavior and verification of properties. Moreover, some ways of handling uncertainty(probability theory, fuzzy set theory, rough set theory, approximate reasoning and approximate algo-rithms) have been used in biology to describe the behavior of systems or to develop simulators forbiological systems [9]. There are some attempts of using probabilities in membrane systems [10, 11,15]. Probabilities are used in many applications of P systems to biology [3] and economics [14]. Theproblem of adding probabilities to P systems is still open, and it is considered to be difficult becauseof various new features introduced by the membrane systems.

In this paper we define the probabilistic transition systems for P systems. The probabilities areadded at the level of rules and communication targets. We extend with probabilities the abstractsyntax and the structural operational semantic of P system given in [1]. The probabilistic transitionsystem is defined over configurations, and computation is defined as a sequence of probabilistic transi-tions between configurations. In order to define a probabilistic transition between two configurationsof a membrane system, we proceed in three steps: (i) we define the probabilistic maximal parallelrewriting step consisting in assigning probabilities to rules in every membrane, and executing themin a maximal parallel manner; (ii) then we define the probabilistic parallel communication of objectsconsisting in assigning probabilities to communication targets, and sending the objects according tothese probabilities; (iii) the parallel membrane dissolving step; we do not consider probabilities in thisstep. We also add probabilities to membrane dissolving in [5].

2 Preliminaries

2.1 Probabilistic Transition System

Since the behavior of a P system is essentially nondeterministic, we consider systems that can performboth probabilistic and nondeterministic choices. Several types of probabilistic and nondeterministicchoices are in the literature. We follow and adapt the approach presented in [4]. Intuitively, a proba-bilistic and nondeterministic choice is given by sets of alternative transitions, each transition havinga certain probability of being selected. The sum of all probabilities of one alternative set must be1. We represent graphically an alternative set of transitions by using an arc linking its transitions(see figure below). Nondeterminism is given by the fact that only one alternative set of transition isselected, and we have no information on how likely one alternative is selected. Therefore we have aprobabilistic choice inside these alternative sets of transitions, while the choice between the alternativesets is nondeterministic.? This work has been supported by the research grant CEEX 47/2005

Page 83: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Probabilistic Transitions for P Systems 83

Definition 1. A probabilistic transition system for a P system is a tuple (S,→) where S is a finiteset of states, and →⊆ S × [0, 1] × S is a probabilistic transition relation. We write s

p−→ t instead of(s, p, t) ∈ →, where p is the probability to reach t from s. The specific feature is given by the fact thatfor each s ∈ S we have alternative sets of transitions given by a partition S1, . . . , Sk of S such that∑

t∈Si p | (s, p, t) ∈ → = 1 for all i = 1, . . . , k.

Example 1. The picture below illustrates an example of probabilistic transition system. If s1, s2, s3,

and s4 are the states which can be reached from s with probabilities12,12,13, and

23, respectively, then

we have a partition of s1, s2, s3, s4 given by S′ = s1, s2 and S′′ = s3, s4 such that∑

t∈S′ p |(s, p, t) ∈ → = 1/2 + 1/2 = 1 and

∑t∈S′′ p | (s, p, t) ∈ → = 1/3 + 2/3 = 1.

´´

´´

´´

´´

´+

¢¢

¢¢

¢¢¢®

AAAAAAAU

ZZ

ZZ

ZZ

ZZZ~

s

s1 s2 s3 s4

1/2

1/2 1/3

2/361

2.2 P Systems

Inspired from the cell structure and functioning, the basic elements of a P system are the membranestructure and the sets of evolution rules which process multisets of objects placed in the compart-ments of the membrane structure. A membrane structure consists of several membranes hierarchicallyembedded in a special membrane called the skin. A membrane without any other membranes insideis elementary, otherwise is a composite membrane. The membranes produce a demarcation betweenregions. Regions contain multisets of objects, evolution rules and possibly other membranes. Onlyrules in region delimited by a membrane act on the objects in that region. The rules contain targetindications, specifying the membrane where the new objects obtained after applying the rule are sent.The new objects either remain in the same region when they have a here target, or they pass throughmembranes, in two directions: they can be sent out of the membrane delimiting a region from outside,or can be sent in one of the membranes delimiting a region from inside, precisely identified by its label.In a step, the objects can pass only through one membrane. A membrane can contains a δ symbol aftera rule application. This means the membrane is dissolved, i.e., it disappears and its contents (objectsand membranes) remain in the membrane placed immediately outside, and the evolution rules of thedissolved membranes are lost. The skin membrane is never dissolved (its rules do not involve δ). Wealso assume the skin does not contain out targets.

Formally, a P system is a structure Π = (O, µ, w1, . . . , wm, (R1, ρ1), . . . , (Rm, ρm), i0), where O isthe alphabet of objects; µ is the membrane structure; wi is the initial multiset over O with i = 1,m;Ri is a finite set of evolution rules over O associated with the membrane i; the typical form of a ruleis u → v, with u a multiset, and v consisting of a message and/or the dissolving symbol δ; ρi is apartial order relation over Ri, specifying a priority relation among the rules: (r1, r2) ∈ δi iff r1 > r2,i.e., r1 has a higher priority than r2; i0 ∈ 0, 1, . . . , m indicate the output membrane of Π (0 beingthe outer region).

Remark 1. In this paper we represent a multiset w by w = M(a1)a1 . . .M(an)an, where a1, . . . , an ∈ Oand M : O → N \ 0 is a mapping which gives the nonzero multiplicities of the objects in O. Forexample, w = 2a1c is a multiset which contains 2 copies of a and 1 copy of c.

A detailed description of the P systems can be found in [13].

We briefly recall now some notations and concepts related to the operational semantics of P systemsgiven in [1].

a) if X is a set, the free commutative monoid X∗c denotes the set of the finite multisets defined over

X, and X+c = X∗

c \ empty;

Page 84: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

84 G. Ciobanu, L. Cornacel

b) the mappings rules and priority associate a membrane label to the set of evolution rules and thepriority relation: rules(Li) = Ri, priority(Li) = ρi;

c) the projections L and w return from a membrane its label and its current multiset, respectively;d) the set of membranes for a P system Π is denoted by M(Π);e) a simple membrane 〈L | w〉 ∈ M(Π) has a label L and a multiset of objects w ∈ O ∪ (O∗c ×here) ∪ (O+

c × out)× δ;f) a composite membrane is 〈L | w;M1, . . . , Mn〉 ∈ M(Π) for a label L and a multiset w ∈ O∪ (O∗c ×here) ∪ (O+

c × out) ∪ (O+c × inL(Mj)) ∪ δ;

g) a finite multiset of sibling membranes is written as M1, . . . , Mn and it is denoted by M+; M+(Π)is the set of non-empty finite multisets of membranes; the union of two multisets of membranesM+ = M1, . . . , Mm and N+ = N1, . . . , Nn is written as M+N+ = M1, . . . , Mm, N1, . . . , Nn;

h) a committed configuration for a P system Π is a skin membrane which has no messages and nodissolving symbol δ; the set of committed configurations for Π is denoted by C(Π) ⊂M+(Π);

i) an intermediate configuration for a P system Π is a skin membrane which has messages or thedissolving symbol δ; the set of intermediate configurations for Π is denoted by C](Π) ⊂M+(Π);

j) a configuration is either a committed configuration or an intermediate configuration.

3 Probabilistic P Systems

There are some previous attempts to assign probabilities to a P system [9–12, 15]. Here we comewith a new way of computing the probabilities for a computational step in P systems, taking intoaccount all the possible combinations of rules applicable in a computation step. Moreover, we definethe probability of consuming the available objects in such a computation step of a P system. Inorder to do this, we extend the definitions of maximal parallel rewriting relation

mpr=⇒ and parallel

communication relation tar=⇒ defined in [1] by enriching the inference rules with probabilities, and we

denote them byPmpr−−−→mpr and Ptar−−−→tar. For consistency, we denote by →δ the relation for parallel

dissolving. In order to get a transition between two configurations of a P system, we follow three stepsas in case of P systems without probabilities:

1. the probabilistic maximal parallel rewriting step - consisting in assigning probabilities to rules inevery membrane, and executing the rules in a maximal parallel manner.

2. the probabilistic parallel communication of objects step - consisting in assigning probabilities toexisting targets and sending the exiting messages according to these probabilities

3. the parallel membrane dissolving step - consisting in dissolving the membranes which contain theδ symbol [1]; no probabilities are added.

Note that after applying the first step we get intermediate configurations. After applying the secondstep we get intermediate configurations if there are δ symbols or committed configurations, otherwise.If there are δ symbols the last step is applied and we get committed configurations. The committedconfigurations are states of the corresponding probabilistic transition system.

Let Π be a membrane system as described in the previous section. We denote byp−→ ∈ C(Π) ×

[0, 1] × C(Π) the probabilistic transition relation over the configurations, and by (C(Π),p−→) the

probabilistic transition system associated to Π. For two configurations C1, C2 we write C1p−→ C2 if

(C1, p, C2) ∈ →. A transition relationp−→ can be seen as a union of

Pmpr−→mpr,Ptar−→tar and →δ. The

syntax of probabilistic P systems differs from the syntax given in [1] by adding also probabilities totargets. A message contains a multiset of objects w from a given region L and the pair (tar, PL

tar(w)),where tar ∈ here, out, inL′. This means the probability for sending the multiset w in the regionspecified by tar is PL

tar(w), and 1− PLtar(w) otherwise. The set of messages is denoted by Msgp(O).

Objects: o ∈ OMultisets of objects: w ∈ O∗cLabels: L ∈ Skin ∪ LMessages: (w, (tar, P L

tar(w))) ∈ Msgp(O),

tar ∈ here, out, inL′

Page 85: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Probabilistic Transitions for P Systems 85

Dissolving symbol: δMembrane contents: w ∈ (O ∪Msgp(O) ∪ δ)∗cMembranes: M ∈M(Π),M ::= 〈L | w〉 | 〈L | w;M+〉Sibling membranes: M+ ∈M+(Π) = M(Π)+cCommitted configurations: C ∈ C(Π)Intermediate configurations: C ∈ C](Π)

3.1 Probabilistic Maximal Parallel Rewriting

We show here how the probabilities are computed in a maximal parallel rewriting step. The proba-bilistic maximal parallel rewriting step consists in assigning probabilities to rules in every membrane,and executing them in a maximal parallel manner. Before going into more details, we remind theirreducibility property w.r.t. the maximal parallel rewriting relation for multisets of objects, messages,and δ, for membranes, and for sets of sibling membranes [1]. A multiset w of objects is L-irreducibleiff there are no rules in rules(L) applicable to w (w.r.t the priority relation priority(L)). A simplemembrane 〈L | w〉 is mpr-irreducible iff w is L-irreducible. A non-empty set of sibling membranesM1, . . . , Mn is mpr-irreducible if every Mi is mpr-irreducible for every i = 1, n. A composite mem-brane 〈L | w;M1, . . . , Mn〉, with n ≥ 1, is mpr-irreducible iff w is L-irreducible, and the set of siblingmembranes M1, . . . , Mn is mpr-irreducible.

Let M = 〈L | w;M1, . . . , Ml〉 be a composite membrane in M(Π), and the rules applied inmembrane L are rules(L) = r1 : u1 → v1, . . . , rn : un → vn, where ri 6= rj , for all i 6= j. Theprobability of a rule ri to be applied is denoted by PL(ri). The probability not to apply the rule ri is

1− PL(ri). We write rules(L) as r1 : u1PL(r1)−−−−→ v1, . . . , rn : un

PL(rn)−−−−→ vn.The consistency of rules for a membrane labelled by L differs from the definition given in [1] by the

fact that we add the probability for each rule. Let w be a multiset of objects. A non-empty multiset

R = r1 : u1PL(r1)−−−−→ v1, . . . , rn : un

PL(rn)−−−−→ vn of evolution rules is (L,w)-consistent iff:

(a) R ⊆ rules(L),(b) w = u1 . . . unz such that all the rules in R are applicable in parallel over w with their correspond-

ing probability,(c) (∀r ∈ R, ∀r′ ∈ rules(L)) r′ applicable on w implies (r, r′) /∈ priority(L),(d) (∀r′, r′′ ∈ R) (r′, r′′) /∈ priority(L),(e) the dissolving symbol δ has at most one occurrence in the multiset v1 . . . vn.

In order to evaluate the probability for a computation step, we follow three steps: (I) we look for thenumber of possible combinations of applicable rules in which the objects (resources) can be allocated,(II) compute the probability of each possible combination, and (III) finally attach the probability ofconsuming all the current resources.

First step represents a combinatorial optimization problem equivalent to knapsack problem whichcan be solved in different ways such as greedy algorithm or using dynamic programming [7].

Since at each step of evaluation all the rules from a combination of applicable rules to the currentmultiset are simultaneously applied (hence the parallelism is maximal at the level of rules), the prob-ability of choosing a combination is the product of the probabilities of the rules of that combinationdivided by the number of all the possible combinations. This is expressed in the following definition.

Definition 2. Let r1, . . . , rn be a combination of applicable rules where each ri applies βi times, andN is the number of such combinations. Then the probability of choosing this combination of rules is:

P (r1, . . . , rn) =1N

n∏

i=1

(PL(ri))βi

Example 2. Assume we have 10 copies of a in a membrane, and the rules inside this membrane are

r1 : 2a → b, r2 : 3a → c, r3 : 4a → d, each with the probability12,13, and

14

respectively. We have 8possible combinations to apply these rules in the maximal parallel way. The probability to choose to

apply, for example, r1 three times and r2 once, is18·(

12

)3

· 13

=1

192.

Page 86: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

86 G. Ciobanu, L. Cornacel

Proposition 1. Let have a membrane labelled by L, w = γ1a1 . . . γmam its multiset, where γj ∈N \ 0 is the number of copies of object aj , j = 1,m. Let (r1, . . . , rn) be a combination of applicablerules over w, βi the number of applications of rule ri, and αi1a1 . . . αimam the left multiset of ruleri, where αij ∈ N is the number of copies of object aj , j = 1,m. The probability of consuming all theresources in membrane L after applying the combination of rules r1, . . . , rn, denoted Pc(r1, . . . , rn),is:

Pc(r1, . . . , rn) =CPn

i=1 βiαi1γ1 . . . C

Pni=1 βiαim

γm

CPm

j=1Pn

i=1 βiαijγ

(1)

where γ =∑m

j=1 γj is the total number of objects in membrane L.

Proof. We use notions and results from probability theory [16]. Suppose we have a finite populationconsisting of N objects distributed as follows: N1 objects of type 1, . . ., Nk objects of type k, where∑k

i=1 Ni = N . For example, we could have an urn with balls of several different colours. The eventE =”choosing n objects from the population, where n1 objects are of type 1, . . ., nk objects areof type k, and

∑ki=1 ni = n” follows the multivariate hypergeometric distribution with parameters

N, (N1, . . . , Nk), and n. The probability of this event is:

P (E) =Cn1

N1. . . Cnk

Nk

CnN

In our case, the population is the membrane with γ objects, where γ1 objects are of type a1, . . ., γm

objects are of type am, γ =∑m

j=1 γj . Applying the rule ri for βi times is equivalent to selecting βiαij

objects of type aj , j = 1,m.

Example 3. Suppose we have w = 11a1b5d, and the rules r1 : 2a1b → b ,r2 : 3a → c, r3 : 1a1d → d.

The probability to consume w by applying, for example, r1 once and r2 three times isC11

11C11C0

5

C1217

=

16188

, and by applying r1 once and r3 five times isC7

11C01C5

5

C1317

=33238

. Usually the probability is

increasing when the total number of consumed objects is increasing.

Proposition 2. If all the objects in the membrane L are of the same type, say a, and γ is the numberof a, i.e. w = γa, the probability Pc(r1, . . . , rn) of consuming all the resources in membrane L afterapplying the combination of rules r1, . . . , rn is

Pc(r1, . . . , rn) =∑n

i=1 βiαi

γ, (2)

where the left multiset of rule ri is equal to αia, and ri applies βi times.

Proof. Let X be the set of possible outcomes of an experiment. Subsets of X are called events. Suppose

X is finite, and each of the outcomes in X is equally likely. Then for any event A, P (A) =| A || X | ,

where | A | is the number of elements in A, and | X | is the number of elements in X. In our case,| X | is the number of objects in the membrane L, all of the same type. Applying the combination of

rules r1, . . . , rn, each rule βi times, the probability of choosingn∑

i=1

βiαi objects is as given in (2). ut

Example 4. Considering the P system described in Example 2, the probability to consume w = 10a

by applying r1 three times and r2 once is1010

= 1 because all the resources are consumed, and the

probability of applying r2 three times is910

.

Proposition 3. Let have a membrane labelled by L, having w as its multiset, and a set R = r1, . . . rnof (L,w)-consistent rules. The probability of a computation step denoted by PL

mpr(w, w′), is given by:

PLmpr(w, w′) =

1N

P ((ri1 , . . . rik))Pc((ri1 , . . . rik

)) (3)

Page 87: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Probabilistic Transitions for P Systems 87

where N is the number of possible combinations to apply the rules r1, . . . , rn, P (ri1 , . . . rik) is the

probability of choosing the combination (ri1 , . . . rik), with i1, . . . , ik ∈ 1, . . . , n, and Pc(ri1 , . . . rik

) isthe probability of consuming all the resources in membrane L by applying this combination.

We write wP L

mpr−→mpr,L w′.

Proof. The proof results directly from Definition 2 and Propositions 1 and 2. ut

Proposition 4. Let M, M ′ ∈M(Π), where M = 〈L | w;M1, . . . , Ml〉, and M ′ = 〈L | w′;M ′1, . . . , M

′l 〉.

We denote by P cmpr(M, M ′) the probability of reaching M ′ by applying the rules in membrane M . We

have:

P cmpr(M, M ′) = PL

mpr(w, w′)l∏

i=1

P cmpr(Mi,M

′i) (4)

We write MP c

mpr−→mpr M ′.

Proof. The proof proceeds by induction on the composition of membrane M and by applying Propo-sition 3 in the final step. ut

Proposition 5. For M+ ∈M+(Π),M+ = M1,M2, . . . Ml, and M ′+ ∈M+(Π), M ′

+ = M ′1,M

′2, . . . M

′l ,

the probability of reaching M ′+ by applying the rules in M+, is:

P+mpr(M+,M ′

+) =l∏

i=1

P cmpr(Mi,M

′i) (5)

We write M+

P+mpr−→mpr M ′

+.

Proof. The proof follows by induction on the composition of membranes M1,M2, . . .Ml and by ap-plying Proposition 3. ut

Remark 2. If not all Mi are mpr-irreducible then

P+mpr(M+) =

l∏

i=1

P cmpr(Mi) | Mi is not mpr-irreducible. (6)

Now we can define the maximal parallel rewriting relationsPmpr−→mpr,L and

Pmpr−→mpr by thefollowing inference rules:

For each w = u1 . . . unz ∈ O+c such that z is L-irreducible, and (L,w)-consistent rules (u1

PL(r1)−−−−→v1, . . . , un

PL(rn)−−−−→ vn),(R1)

u1 . . . unzP L

mpr−→mpr,L v1 . . . vnz

where PLmpr(w, v1 . . . vnz) is defined as in (3).

For each w ∈ O+c , w′ ∈ (O ∪Msgp(O) ∪ δ)+c and label L,

(R2)w

P Lmpr−→mpr,L w′

〈L | w〉 P Lmpr−→mpr 〈L | w′〉

For each w ∈ O+c , w′ ∈ (O ∪Msgp(O) ∪ δ)+c , M+, M ′

+ ∈M+(Π), and label L,

(R3)w

P Lmpr−→mpr,L w′,M+

P+mpr−→mpr M ′

+

〈L | w;M+〉P c

mpr−→mpr 〈L | w′;M ′+〉

Page 88: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

88 G. Ciobanu, L. Cornacel

where P cmpr(〈L | w;M+〉, 〈L | w′;M ′

+〉) = PLmpr(w, w′)P+

mpr(M+,M ′+).

For each w ∈ O+c , w′ ∈ (O ∪Msgp(O) ∪ δ)+c , mpr-irreducible M+ ∈M+(Π), and label L,

(R4)w

P Lmpr−→mpr,L w′

〈L | w;M+〉P c

mpr−→mpr 〈L | w′;M+〉where P c

mpr(〈L | w;M+〉, 〈L | w′;M+〉) = PLmpr(w, w′).

For each L-irreducible w ∈ O∗c , and M+,M ′+ ∈M+(Π), and label L,

(R5)M+

P+mpr−→mpr M ′

+

〈L | w;M+〉P c

mpr−→mpr 〈L | w;M ′+〉

where P cmpr(〈L | w;M+〉, 〈L | w;M ′

+〉) = P+mpr(M+,M ′

+).For each M, M ′ ∈M(Π), and M+,M ′

+ ∈M+(Π),

(R6)M

P cmpr−→mpr M ′,M+

P+mpr−→mpr M ′

+

M, M+P+′

mpr−→mpr M ′,M ′+

where P+′mpr((M, M+), (M ′,M ′

+)) = P cmpr(M, M ′)P+

mpr(M+,M ′+).

For each M, M ′ ∈M(Π), and mpr-irreducible M+,∈M+(Π),

(R6)M

P cmpr−→mpr M ′

M, M+P+′

mpr−→mpr M ′,M+

where P+′mpr((M, M+), (M ′,M+)) = P c

mpr(M, M ′).The related results given in [1] hold here as well.

3.2 Probabilistic Parallel Communication

After a probabilistic maximal parallel rewriting step, the resulted multisets contain messages withtargets and probabilities of placing these multisets in the regions indicated by the targets. In thissection we evaluate the probability of getting new intermediate or committed configurations aftersending these messages. We first recall some notions regarding P systems without probabilities. Wesay that a multiset w inside a membrane L is here-free/in′L-free/out-free if it does not contain anyhere/inL/out messages, respectively [1]. For w a multiset of objects and messages, the operations obj,here, out, inL′ are defined as follows:

obj(w) is obtained from w by removing all the messages.

here(w) =

empty, if w is here-free

w′′, if w = w′(w′′, PLhere(w

′′)) ∧ PLhere(w

′′) 6= 0 ∧ w′ out-free

out(w) =

empty, if w is out-free

w′′, if w = w′(w′′, PLout(w

′′)) ∧ PLout(w

′′) 6= 0 ∧ w′ out-free

inL′(w) =

(empty, if w is inL′ -free

w′′, if w = w′(w′′, P LinL′ (w

′′)) ∧ P LinL′ (w

′′) 6= 0 ∧ w′ inL′ -free

The definition of tar-irreducibility property is given as in [1]. A simple membrane 〈L | w〉 is tar-irreducible iff L = Skin ∨ (L 6= Skin ∧ w is out-free). A non-empty set of sibling membranesM1, . . . , Mn is tar-irreducible iff Mi is tar-irreducible, for every i = 1, n. A composite membrane〈L | w;M1, . . . , Mn〉, n ≥ 1, is tar-irreducible iff:

Page 89: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Probabilistic Transitions for P Systems 89

(a) L = Skin ∨ (L 6= Skin ∧ w is out-free),(b) w is inL(Mi)-free, for every i = 1, n,(c) for all i = 1, n, w(Mi) is out-free,(d) the set of sibling membranes M1, . . . , Mn is tar-irreducible.

Since at each step of evaluation, all the existing messages from a multiset w are sent simultaneously inthe regions indicated by the targets, the probability of sending all the messages of w is the product ofall probabilities of placing the multisets with targets in the corresponding regions. This is expressedin the following definition.

Definition 3. The probability of sending all the messages of w in the regions indicated by the targets,where w = (v1, (tar1, P

Ltar(v1))), . . . , (vn, (tarn, PL

tar(vn)))z, vi ∈ O∗c , i = 1, n and z is tar-irreducible is:

PLtar(w) =

n∏

i=1

PLtari

(vi) (7)

Proposition 6. Let M, M ′ ∈M(Π), where M = 〈L | w;M1, . . . , Ml〉, and M ′ = 〈L | w′;M ′1, . . . , M

′l 〉.

We denote by P ctar(M, M ′) the probability of reaching M ′ by sending the existing messages from M ,

then we have:

P ctar(M, M ′) = PL

tar(w)l∏

i=1

P ctar(Mi,M

′i) (8)

We write MP c

tar−→tar M ′.

Proof. The proof follows by induction on the composition of membrane M . utProposition 7. For M+ ∈M+(Π),M+ = M1,M2, . . . Ml, and M ′

+ ∈M+(Π), M ′+ = M ′

1,M′2, . . . M

′l ,

the probability of reaching M ′+ by sending the existing messages from M+, denoted P+

tar(M+,M ′+) is:

P+tar(M+,M ′

+) =l∏

i=1

P ctar(Mi,M

′i) (9)

We write M+P+

tar−→tar M ′+.

Proof. The proof follows by induction on the structure of composite membranes M1,M2, . . . , Ml, andby applying Proposition 6. utRemark 3. If not all Mi are tar-irreducible then

P+tar(M+) =

l∏

i=1

P ctar(Mi) | Mi is not tar-irreducible. (10)

Now we can define the parallel communication relation Ptar−→tar by the following inference rules:

For each tar-irreducible M1, . . . Mn ∈M+(Π), label L, and multisets w such that here(w) 6= emptyor L 6= Skin ∧ out(w) 6= empty, or it exists i = 1, n with inL(Mi)(w)out(w(Mi)) 6= empty, orhere(w(Mi)) 6= empty,

(C1)〈L | w;M1, . . . Mn〉 P c

tar−→tar 〈L | w′;M ′1, . . .M

′n〉

where P ctar(M, M ′) is defined as in (8), M and M ′ are the left and right hand sides, respectively, of

the conclusion of the rule, w′ = obj(w)here(w)out(w(M1)) . . . out(w(Mn)) and w(M ′i) = obj(w(M ′

i))here(w(M ′

i))inL(Mi)(w), for all i=1, n.

Page 90: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

90 G. Ciobanu, L. Cornacel

For each M+ = M1, . . . , Mn,M ′+ = M ′

1, . . . , M′n ∈M+(Π), multiset w, and label L,

(C2)M1, . . . , Mn

P+tar−→tar M ′

1, . . . , M′n

〈L | w;M1, . . . Mn〉 P ctar−→tar 〈L | w′′;M ′′

1 , . . .M ′′n 〉

where

P ctar(M, M ′′) = PL

tar(w)P+tar(M, M ′)

M and M ′′ are the left and right hand side of the conclusion of the rulew′′ = obj(w)here(w)out(w(M ′

1)) . . . out(w(M ′n))

w(M ′′i ) = obj(w(M ′

i))here(w(M ′i))inL(Mi)(w), for all i = 1, n.

For each multiset w such that here(w)out(w) 6= empty,

(C3)〈Skin | w〉 P c

tar−→tar 〈Skin | obj(w)here(w)〉where

P ctar(M, M ′) = PSkin

tar (w), andM = 〈Skin | w〉 and M ′ = 〈Skin | obj(w)here(w)〉.

For each M, M ′ ∈M(Π), and tar-irreducible M+ ∈M+(Π),

(C4)M

P ctar−→tar M ′

M, M+P+

tar−→tar M ′,M+

where P+tar((M, M+), (M ′,M+)) = P c

tar(M, M ′).

For each M ∈M(Π),M+ ∈M+(Π),

(C5)M

P ctar−→tar M ′,M+

P+tar−→tar M ′

+

M, M+P+′

tar−→tar M ′,M+

where P+′tar((M, M+), (M ′,M ′

+)) = P ctar(M, M ′)P+

tar(M ′+).

3.3 Probabilistic Transition System for a P System

Let Π be a membrane system. The probabilistic operational semantics of Π corresponds to a transitionsystem where states are identified with configurations. Let (C(Π),

p−→) be the probabilistic transitionsystem associated to Π, and C1, C2 ∈ C(Π) be two configurations of the probabilistic transition

system. The transitionp−→ can be seen as a union of

Pmpr−→mpr,Ptar−→tar and →δ. The probability to

reach C2 from C1 is given by:

P (C1, C2) = P cmpr(C1, C

′1)P

ctar(C

′1, C2)

where C ′1 is an intermediate configuration which contains messages.Since the rules from each membrane are applied in a maximal parallel way, the cumulative proba-

bility to get out from a state could be greater than 1 or could be approximately 0. For that we haveto do a normalization in order to obtain probabilistic and nondeterministic system. Let C11, . . . , C1n

the states that can be reached from C1. Then, the probability to reach a state C1i is:

p = P (C1, C1i) =P (C1, C1i)∑ni=1 P (C1, C1i)

Page 91: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Probabilistic Transitions for P Systems 91

Since we get a probabilistic transition system, we can apply existing methods for formal verificationof P systems [4, 2]. In order to analyse a probabilistic model which has been specified, it is necessaryto identify one or more properties of the model which can be evaluated by a tool. While some systemproperties can be studied in a non-probabilistic setting, others, such as system performance andreliability, steady-state analysis, and so on, require a probabilistic description of the system. As toolsof verification we can use PRISM [8], a probabilistic model-checker available at http://www.cs.bham.ac.uk/~dxp/prism. Typically for expressing the properties checked by the verification tools, PRISMis also using temporal logic.

4 Conclusion and Further Work

In this paper we defined the probabilistic operational semantics of a P system by adding probabilitiesat the level of rules and targets. Essentially, we extend with probabilities the abstract syntax and thestructural operational semantic of P system given in [1]. A specific feature of this approach is givenby the combinatorial nature of the probabilities.

There exist many variants and classes of P systems; many of them are introduced in [13]. In thefuture we intend to study the probabilistic approach of some interesting classes of P systems. Wealso work to a probabilistic simulator P system based on the syntax and semantic of the P systemgiven in this paper. The aim is to get some interesting results, and good graphical representations forthe behaviour of a P systems. For example, we can compute the probability that a certain object ispresent in a specified configuration.

Some attempts to address these topics in membrane computing have been reported. One is in[10], where M. Madhu defines a variant of P systems called probabilistic rewriting P systems, wherethe selection of rewriting rules is probabilistic. He shows that, with nonzero cut-point, probabilisticrewriting P systems with/without priorities generate only finite languages, but with zero cut-point andwithout priorities, probabilistic rewriting P systems of degree 1 characterize the family of languagesgenerated by matrix grammars.

A different approach is chosen in [12], where stochastic P systems are introduced by starting fromstochastic Petri nets, and randomized P systems are used to implement randomized algorithms whichcan solve hard problems in linear time with a high enough probability, making use of a sub-exponentialworkspace.

Obtulowicz discusses in [11] various ways of associating probabilities in membrane computing:to single objects, to multiplicities of objects (hence to multisets), to rules (depending or not on theprevious applied rules), to the communication targets.

Dynamical probabilistic P systems are presented in [15]; the probabilities associated to rules changeduring the evolution of the system. This approach is used as to simulate and analyze the behavior ofsome complex systems.

Interesting applications of probabilities in P systems describing biological processes are presentedin [3]. In [14] we can find how probabilities and P systems can be used in economics.

References

1. O. Andrei, G. Ciobanu, D. Lucanu: A structural operational semantics of the P systems. In MembraneComputing WMC6, Lecture Notes in Computer Science vol.3850, Springer, 32–49, 2006.

2. C. Baier, B.R Haverkort, H. Hermanns, J.-P. Katoen: Model checking meets performance evaluation.Special issue of ACM Performance Evaluation Review on Performance and Verification, vol.32, 10-15,2005.

3. F. Bernardini, M. Gheorghe, N. Krasnogor, R.C. Muniyandi, M.J. Perez-Jimenez, F.J. Romero-Campero:On P systems as a modelling tool for biological systems. In Membrane Computing WMC6, Lecture Notesin Computer Science vol.3850, Springer, 114–133, 2006.

4. A. Bianco, L. de Alfaro: Model checking of probabilistic and nondeterministic systems. In Foundationsof Software Technology and Theoretical Computer Science, Lecture Notes in Computer Science vol.1026,499–513, 1995.

5. L. Cornacel: Probabilistic aspects of formalisms inspired from biology. Master thesis, ”A.I.Cuza” Universityof Iasi, 2006.

Page 92: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

92 G. Ciobanu, L. Cornacel

6. C. Courcoubetis, M. Yannakakis: The complexity of probabilistic verification. J. ACM, vol.42, 857–907,1995.

7. M.R. Garey, D.S. Johnson: Computers and Intractability: A Guide to the Theory of NP-Completeness.W.H.Freeman and Company, 1979.

8. M. Kwiatokowska, G. Norman, D. Parker: Probabilistic symbolic model checking with PRISM: a hybridapproach. Int. J. Softw. Tools Technol. Transf., vol.6, 128–142, Springer, 2004.

9. M. Llabres et al. (Eds.): Brainstorming Workshop on Uncertainty in Membrane Computing. Palma deMallorca, 2004.

10. M. Madhu: Probabilistic rewriting P systems. International Journal of Foundations of Computer Science,vol.14, 57–166, 2003.

11. A. Obtulowicz: Probabilistic P systems. In Workshop on Membrane Computing WMC-CdeA’02, 377–387,2003.

12. A. Obtulowicz, Gh. Paun: (In search of) Probabilistic P systems. BioSystems, vol.70, 107–121, 2003.13. Gh. Paun: Membrane Computing. An Introduction. Springer, 2002.14. Gh. Paun, R. Paun: Membrane computing as a framework for modeling economic processes. In Proceedings

7th SYNASC Conference, IEEE Computer Society, 11-18, 2005.15. D. Pescini, D. Besozzi, G. Mauri, C. Zandron: Dynamical probabilistic P systems: Definitions and appli-

cations. International Journal of Foundations of Computer Science, vol.17, 183–204, 2006.16. T. Wu: Computation of the multivariate hypergeometric distribution function. Computing Science and

Statistics, vol.24, 25–28, 1992.

Page 93: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

How a Membrane Agent Buys Goods in a Membrane Store

Rudolf Freund, Marion Oswald, Thomas Schirk

Institute of Computer Languages, Vienna University of TechnologyFavoritenstr. 9, Wien, Austriarudi,marion,[email protected]

Abstract. In this paper we consider a specific model of membrane systems, i.e., membranesystems with attributes. In these systems, the information is placed at the membranes in formof attributes, no objects are considered inside the membranes except for other membranes. Themembrane system with attributes evolves according to rules that compute new values for theattributes from the attributes assigned to the membranes involved in the rule. The model ofmembrane systems with attributes allows us to specify business transactions in a precise wayand to simulate different models for such transactions with a suitable tool for membrane systemswith attributes.

1 Introduction

During the last years, the area of membrane systems has evolved rapidly. Many variants of membranesystems or, as they now are usually called, P systems have been introduced and their computationalpower turned out to be very high even with quite small ingredients. For a first comprehensive overviewof P systems see the monograph [3], for the actual state of the art we refer the reader to the P systemswebpage [10].

Although many variants of P systems turned out to be computationally complete, applications ofP systems just recently became of more interest, for example see [1]. As membrane systems are basedon biological processes taking place in cells or between cells, also using the exchange of objects throughmembranes, it is quite natural that many applications also deal with simulating processes happeningin nature. On the other hand, it also seems interesting to model processes outside this area of biologyand to consider processes in a completely different area, e.g., in [6] a first approach was made in thatdirection modeling business transactions by membrane systems; this idea was continued in [4] and[5]. In contrast to [5], where interesting theoretical results on the computational power of numericalP systems were obtained, in this paper we concentrate on the simulation of business transactions bya suitable model of membrane systems. The model of membrane systems we are going to considerbelow works with attributes assigned to the membranes, yet without any objects inside the membranesthemselves. The function of the membrane system is based on the interaction between membranes insuch a way that suitable functions allow for computing the next configuration of the system from theattributes assigned to the membranes involved by a rule; the attributes we deal with theoretically arenot restricted to multisets or strings over a finite alphabet, i.e., we also allow real numbers etc. atthe same time having in mind a finite representation of such objects and their handling by a finitelydescribed mechanism as we can expect for a simulation of everyday-life processes, i.e., even when notstating this explicitly, we assume all functions to be computable. The model of membrane systemswith attributes considered in this paper is also used in [8] to model various business transactions;some of the examples considered below can be found there explained in more detail.

The rest of the paper is organized as follows: in the next section, we describe the model of membranesystems with attributes used in this paper and give a first example; moreover, we elaborate sometheoretical features of the model of membrane systems with attributes, and finally, we exhibit someideas how we can use membrane systems with attributes for specifying business transactions. In thesucceeding section we then describe an example showing how this model of P systems can be used todescribe business processes; i.e., we describe how an agent is sent out to buy some goods. In the lastsection, we summarize the main ideas presented in this paper and give an outlook to future research.

Page 94: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

94 R. Freund, M. Oswald, T. Schirk

2 P Systems with Attributes

For the background of formal language theory, we refer the reader to monographs as [7]. We recall justa few well-known notations: V ∗ is the free monoid generated by the alphabet V under the operationof concatenation and the empty string, denoted by λ, as unit element. N, N0, Z, and R denote the setof positive integers (natural numbers), the set of non-negative integers, i.e., N0 = N ∪ 0, the set ofintegers, and the set of real numbers, respectively.

The theoretical model of membrane systems we introduce in this paper is inspired by the manymodels considered in the area of P systems so far (especially we again refer to [3] and [10]). Weshall assume the reader to be a little bit familiar with this area, although the definitions given in thefollowing will be self-contained. We just mention that in P systems we have a hierarchical membranestructure; the outermost membrane is called skin membrane. Every membrane encloses its regionpossibly containing other membranes; a membrane whose region does not contain any other membraneis called elementary. Membranes are represented by matching parentheses [ ]; to indicate that thevector of attributes a is assigned to a membrane, we simply write [a]. In contrast to the commondefinitions, we shall not use labels for the individual membranes, because the rules are not assigned tomembranes with specific labels, but instead can be applied to any combination of membranes fulfillingthe structural constraints given in the rule and having the attributes in the domains of the functionsspecified in the rule.

We now introduce the model of membrane systems we shall use in this paper: A P system withattributes (a PSA for short) is a construct

Π = ((µ0, I0) , R)

where

– µ0 is the initial membrane structure,– I0 is a function assigning the initial attribute to every membrane in µ0, and– R are the rules of the following forms:

1. ([a] → [a′] , f1) – evolution; the new attribute a′ of the membrane is computed from the currentattribute a by the function f1;

2. ([a] [b] → [a′] [b′] , f1, f2) – joint evolution; the new attributes a′ and b′ of the two membranesbeing in the same region are computed from the current attributes a and b by the functionsf1 and f2, respectively;

3. ([a [b]] → [a′ [b′]] , f1, f2) – parent/child evolution; the new attributes a′ and b′ of the outer(the parent) and the inner (the child) membrane, respectively, are computed from the currentattributes a and b by the functions f1 and f2, respectively;

4. ([a [b]] → [a′] , f1) – deletion of inner membrane; the inner membrane is deleted, the new at-tribute a′ of the outer membrane is computed from the current attributes a and b by thefunction f1;

5. ([a [b]] → [b′] , f1) (where the outer membrane must not be the skin membrane) – deletion ofouter membrane; the outer membrane is deleted, the new attribute b′ of the inner membraneis computed from the current attributes a and b by the function f1;

6. ([a] [b] → [a′] , f1) – join; two membranes join to a single one, the new attribute a′ of the singlemembrane is computed from the current attributes a and b by the function f1;

7. ([a] → [a′] [b′] , f1, f2) (where the original membrane must not be the skin membrane) – gen-eration; the new attributes a′ and b′ of the two membranes are computed from the currentattribute a by the functions f1 and f2, respectively;

8. ([a] → [a′ [b′]] , f1, f2) – generation of inner membrane; the new attributes a′ and b′ of theoriginal membrane and the newly generated inner membrane, respectively, are computed fromthe current attribute a by the functions f1 and f2, respectively;

9. ([a] → [b′ [a′]] , f1, f2) (where the original membrane must not be the skin membrane) – gen-eration of outer membrane; the new attributes a′ and b′ of the original membrane and thenewly generated outer membrane, respectively, are computed from the current attribute a bythe functions f1 and f2, respectively;

Page 95: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

How a Membrane Agent Buys Goods in a Membrane Store 95

10. ([a] [b] → [a′ [b′]] , f1, f2) – phagocytosis; one membrane is enclosed by another one, the newattributes a′ and b′ of the two membranes are computed from the current attributes a and bby the functions f1 and f2, respectively;

11. ([a [b]] → [a′] [b′] , f1, f2) – exocytosis; the outer membrane expels the inner one, the new at-tributes a′ and b′ of the two membranes are computed from the current attributes a and b bythe functions f1 and f2, respectively;

The rules of the system Π are applied in a sequential way (e.g., see [2]), i.e., only one rule isapplied in one derivation step to get a new configuration. We should like to emphasize that a rule ofthe form (p, f1) or (p, f1, f2) can be applied if and only if the involved membranes fulfill the hierarchicalconstraints given by p and the function(s) f1(,f2) are defined for the actual values of the attributesassigned to the membranes involved in the rule.

Some of the rules can be combined to construct new rules. For example, phagocytosis([a] [b] → [a′ [b′]] , f1, f2) and exocytosis ([a [b]] → [a′] [b′] , f1, f2) can be seen as the sequence of rules([a] [b] → [a′′] , f ′′1 ), ([a′′] → [a′ [b′]] , f ′1, f

′2) and ([a [b]] → [a′′] , f ′′1 ), ([a′′] → [a′] [b′] , f ′1, f

′2), respectively.

Obviously, we could also allow more complex rules, e.g., a combination of twice using a rule of theform ([a] → [a′] [b′] , f1, f2) would yield the more complex rule

([a] → [a′] [b′] [c′] , f1, f2, f3) ,

yet we shall explain such more complex rules only in the context where it helps to make the expositionof an algorithm more concise and readable.

2.1 A first example

As a first example we specify a PSA comparing two numbers n and k (from N, Z, N0, or even fromR; from a formal language point of view, the most reasonable choice is N0), given as attributes of twoelementary membranes inside the skin membrane, and yielding the answer of the comparison as anattribute of the skin membrane (1 > 2 means that n > k, 2 > 1 indicates that k > n, and 1 = 2 saysthat both numbers are equal).

Π = ((µ0, I0) , R) ,(µ0, I0) = [(0)[(1, n)][(2, k)]],

R = ([a [b]] → [a′] , f1)with

f1 : ((0)× (1 × N)) ∪ ((0 × N)× (2 × N))→ (0 × N) ∪ (0 × 1 > 2, 2 > 1, 1 = 2) ,f1 (0, 1, n) = (0, n) ,

f1(0, n, 2, k) =

(0, 1 > 2) if n > k,(0, 2 > 1) if k > n,(0, 1 = 2) if n = k.

Each of the three membranes carries an attribute vector whose first component identifies it as the skinmembrane ( 0 ) or as one of the inner membranes carrying the first ( 1 ) and the second ( 2 ) numberto be compared. The comparison is done in two steps: in the first step, the skin membrane takes overthe number n from (the second component of the attribute vector of) the first inner membrane anddeletes this membrane; in the second step, this number n is compared with the number k assigned(as the second component of the attribute vector) to the second inner membrane, which is deletednow, whereas the result of the comparison of n and k appears as the second component of the finalattribute vector of the skin membrane.

The same task of comparing two numbers can be accomplished by using one more complex rulethat allows the skin membrane to interact with both inner membranes at the same time:

Π = ((µ0, I0) , R) ,(µ0, I0) = [(0)[(1, n)][(2, k)]],

R = ([a [b] [c]] → [a′] , f1)

Page 96: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

96 R. Freund, M. Oswald, T. Schirk

withf1 : (0)× (1 × N)× (2 × N)→ (0 × 1 > 2, 2 > 1, 1 = 2) ,

f1(0, 1, n, 2, k) =

(0, 1 > 2) if n > k,(0, 2 > 1) if k > n,(0, 1 = 2) if n = k.

For both cases, the initial configuration and the final configuration can be seen in figure 1 (the set1 > 2, 2 > 1, 1 = 2 in the second component in the attribute vector of the skin membrane of thefinal configuration indicates that exactly one element of that set is obtained).

'

&

$

%

(0)

#

"

Ã

!(1, n)

#

"

Ã

!(2, k) =⇒∗

'

&

$

%

(0, 1 > 2, 2 > 1, 1 = 2)

Fig. 1. Order relation between two numbers n and k.

2.2 Theoretical remarks

The model of P systems with attributes introduced above is very powerful from a theoretical point ofview, because we have made no severe restrictions on the functions used to compute the new attributesin the rules. Yet even when restricting the power of these functions, PSA remain very powerful; as anexample, let us consider PSA working on numbers from N0. Then without sophisticated functions, wecan easily simulate register machines:

A deterministic n-register machine is a construct M = (n,R, l0, lh) , where n is the number ofregisters, R is a finite set of instructions injectively labelled with elements from Lab (M) ⊂ N0, l0 isthe initial/start label, and lh is the final label; the instructions are of the following forms:

– l1 : (A (r) , l2) (ADD instruction)Add 1 to the contents of register r and proceed to the instruction (labelled with) l2.

– l1 : (S (r) , l2, l3) (SUB instruction)If register r is not empty, then subtract 1 from its contents and go to instruction l2, otherwiseproceed to instruction l3.

– lh : halt (HALT instruction)Stop the machine. The final label lh is only assigned to this instruction.

A register machine can easily be simulated by a PSA, for example, in the following way: Theregisters are represented as elementary membranes carrying the attributes (i, c (i)) where i is thenumber of the register and c (i) is its contents; the finite control is situated at the skin membrane withthe attribute vector (0, l) where l is the current instruction label. Hence, we construct the PSA

Π = ((µ0, I0) , R′)

with the initial configuration[(0, l0) [(1, c0 (1))] ... [(n, c0 (n))]]

Page 97: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

How a Membrane Agent Buys Goods in a Membrane Store 97

where c0 (i), 1 ≤ i ≤ n, are the initial values of the registers i, and

R′ = ([a [b]] → [a′ [b′]] , f1, f2) | l1 : (A (r) , l2) ∈ R,f1 (0, l1, r, k) = (0, l2) , f2 (0, l1, r, k) = (r, k + 1)

∪ ([a [b]] → [a′ [b′]] , f1, f2) | l1 : (S (r) , l2, l3) ∈ R,f1 (0, l1, r, k) = (0, l2) , f2 (0, l1, r, k) = (r, k − 1) for k > 0,f1 (0, l1, r, 0) = (0, l3) , f2 (0, l1, r, 0) = (r, 0)

where all fi are functions

fi : ((0 × Lab (M))× (1, ..., n × N0))→ ((0 × Lab (M))× (1, ..., n × N0)) .

It is obvious that the PSA Π constructed in that way simulates the given register machine M ;moreover, Π halts (which means that no rule can be applied anymore) if and only if M halts. In thatway, Π can compute functions as M does, and the result can be seen as the second component ofthe attribute vector assigned to the membrane corresponding to the respective register in the finalconfiguration. As can be seen from the construction of the rules, only rules of one kind are needed, i.e.,of the form ([a [b]] → [a′ [b′]] , f1, f2) – parent/child evolution. Moreover, the functions are quite simple,too, the main power lying in the possibility to distinguish between the case of an empty register anda non-empty register.

Obviously, this variant for simulating register machines is not the only one that can simulate avariant of P systems well known from the literature, yet we do not follow this line anymore in thispaper. Instead, we turn our attention to use PSA for specifying specific processes in business life.

2.3 Using PSA for economic models

A relatively new approach of economic problems is to focus on the single individual and not on thewhole mechanism. There exist many economic procedures that calculate only the totality of economicprocesses, a good example being the price calculation of companies: the price setting depends on thedemands and needs of the customers and, of course, also on the price of the material needed to producean article; yet the demand usually is not created by a single person, but by many customers. Manybusiness analysts try to find out why the homo economicus acts how he acts (e.g., see [9]). A big partof these economic studies are computer simulations.

We now establish P Systems with attributes as a formal specification tool for business processes.The membranes symbolize individuals, but also companies and their goods etc. The interactionsbetween customers and vendors or companies are captured by the change of the membrane structureas well as by the functions in the rules. The attributes assigned to the membranes can represent notonly the identity and the function of a membrane, but also features like the colour of the hair of aperson or the price of a good. Hence, in the succeeding section we shall exhibit a depictive examplehow P systems with attributes can model specific business transactions. Moreover, we should like topoint out that we are developing a simulation tool based on the theoretical model described in thispaper for running randomized simulations of some specific business transactions in the way economicstudies are carried out as computer simulations in the traditional way.

3 How a Membrane Agent Buys Membrane Chocolate at a MembraneStore

In this section we describe how the process of buying goods can be formulated within the frameworkof P systems with attributes.

Within the closed world represented by the skin membrane, we consider membranes for customers,stores, agents, and goods (e.g., chocolate). In the representation of the example given below, we onlylist those attributes that are necessarily involved in the transaction we want to describe. We startwith the following initial configuration (see Figure 2):

Page 98: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

98 R. Freund, M. Oswald, T. Schirk

'

&

$

%

(0)

'

&

$

%

(store, y)

²±

¯°

(chocolate, price)

'

&

$

%

(customer, x,

happy)

Fig. 2. Initial membrane structure.

'

&

$

%

(0)

'

&

$

%

(store, y)

²±

¯°

(chocolate, price)

'

&

$

%

(customer, x− p,

wait for chocolate)

'

&

$

%

(agent, p, chocolate,

goto store)

Fig. 3. Creation of an agent.

[0(0) [(store,moneystore) [(chocolate, price)]][(customer,moneycustomer, happy)]]

The skin membrane will never change, it just carries the attribute (0) showing that it is the skinmembrane. Within this closed world, we start with a store having some budget moneystore (y) andoffering chocolate at a price of price. The customer has some budget moneycustomer (x) to buy goods,and the status (initially being happy) indicates his needs. Obviously, this is only a small part of theclosed world, e.g., usually we would have not only one piece of chocolate in the store, but we restrictourselves to depict those objects which will be handled during the buying process. If for some reasonsfrom outside the customer’s status changes from happy to need chocolate then the customer creates anagent (see Figure 3) (goto store) for buying a piece of chocolate costing at most p (we use M for theset of money values we are dealing with, e.g., decimal number representations with a fraction of twodigits, up to a maximal amount max):

([c] → [c′] [a′] , f1, f2) ,f1 : (customer ×M× need chocolate) →

(customer ×M× wait for chocolate) ,f2 : (customer ×M× need chocolate) →

Page 99: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

How a Membrane Agent Buys Goods in a Membrane Store 99

'

&

$

%

(0)

'

&

$

%

(store, y)

²±

¯°

(chocolate, price)

'

&

$

%

(customer, x− p,

wait for chocolate)'

&

$

%

(agent, p, chocolate,

in store)

Fig. 4. The agent enters the store.

(agent ×M× chocolate × goto store) ,f1 (customer, x, need chocolate) = (customer, x− p, wait for chocolate) ,f2 (customer, x, need chocolate) = (agent, p, chocolate, goto store) .

([s] [a] → [s′ [a′]] , f1, f2) ,f1 : ((store ×M)× (agent ×M× chocolate × goto store)) →

(store ×M) ,f2 : ((store ×M)× (agent ×M× chocolate × goto store)) →

(agent ×M× chocolate × in store) ,f1 (store, y, agent, p, chocolate, goto store) = (store, y) ,f2 (store, y, agent, p, chocolate, goto store) = (agent, p, chocolate, in store) .

'

&

$

%

(0)

'

&

$

%

(store, y)

²±

¯°

(chocolate)

'

&

$

%

(customer, x− p,

wait for chocolate)'

&

$

%

(agent, p, chocolate,

bought, price)

Fig. 5. The agent buys chocolate.

The agent now enters the store (see Figure 4) and checks whether he can afford the chocolateoffered here provided there is some chocolate available. He buys the chocolate if available in the storeat a price of no more than the money p he has got from the customer (see Figure 5); we here do notconsider the frustrating case that the agent is not able to buy chocolate.

Page 100: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

100 R. Freund, M. Oswald, T. Schirk

'

&

$

%

(0)

'

&

$

%

(store, y + price)

²±

¯°

(chocolate)

'

&

$

%

(customer, x− p,

wait for chocolate)

'

&

$

%

(agent, p− price,

chocolate, back)

Fig. 6. The agent pays and leaves the store.

([a] [b] → [a′ [b′]] , f1, f2) ,f1 : ((agent ×M× chocolate × in store)× (chocolate ×M)) →

(agent ×M× chocolate × bought ×M) ,f2 : ((agent ×M× chocolate × in store)× (chocolate ×M)) →

(chocolate) ,f1 (agent, p, chocolate, in store, chocolate, price) =

(agent, p, chocolate, bought, price) ,f2 (agent, p, chocolate, in store, chocolate, price) = (chocolate) .

([s [a]] → [s′] [a′] , f1, f2) ,f1 : ((store ×M)× (agent ×M× chocolate × bought ×M)) →

(store ×M) ,f2 : ((store ×M)× (agent ×M× chocolate × bought ×M)) →

(agent ×M× chocolate × back) ,f1 (store, y, agent, p, chocolate, bought, price) = (store, y + price) ,f2 (store, y, agent, p, chocolate, bought, price) =

(agent, p− price, chocolate, back) .

When leaving the store (see Figure 6), the agent pays for the chocolate and returns back to thecustomer (see Figure 7).

([c] [a] → [c′ [a′]] , f1, f2) ,f1 : ((customer ×M× wait for chocolate)×

(agent ×M× chocolate × back)) →(customer ×M× get chocolate) ,

f2 : ((customer ×M× wait for chocolate)×(agent ×M× chocolate × back)) →(agent × chocolate) ,

f1 (customer, z, wait for chocolate, agent, q, chocolate, back) =(customer, z + q, get chocolate) ,

f2 (customer, z, wait for chocolate, agent, q, chocolate, back) =(agent, chocolate) .

Finally, the agent releases the chocolate (see Figure 8), and after having eaten the chocolate, thecustomer is happy again (see Figure 9).

([a [b]] → [b′] , f1) ,f1 : ((agent × chocolate)× (chocolate)) → (chocolate) ,

Page 101: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

How a Membrane Agent Buys Goods in a Membrane Store 101

'

&

$

%

(0)

'

&

$

%

(store, y + price)

²±

¯°

(chocolate)

'

&

$

%

(customer, x− price,

get chocolate)

'

&

$

%

(agent,

chocolate)

Fig. 7. The agent returns back to the customer.

'

&

$

%

(0)

'

&

$

%

(store, y + price)

²±

¯°

(chocolate)

'

&

$

%

(customer, x− price,

get chocolate)

Fig. 8. The chocolate is released.

f1 (agent, chocolate, chocolate) = (chocolate) .

([c [b]] → [c′] , f1) ,f1 : ((customer ×M× get chocolate)× (chocolate)) →

(customer ×M× happy) ,f1 (customer, z, get chocolate, chocolate) = (customer, z, happy) .

4 Summary and Future Research

In this paper we have proposed the model of membrane systems with attributes as a specification toolfor business processes. From a theoretical point of view, this model is a very rigorous one, the systemsevolving only by eventually changing the membrane structure and by the interaction of the attributesassigned to the membranes; a rule only changes the attributes of the membranes involved in the rule,no objects are involved inside the membranes.

For business transactions like auctions different strategies can be found in the literature. Hence, itis of some interest to specify these variants within the same formal framework and then to let somesimulations run that allow for comparing the possible behaviour of these variants. As the membranesystems with attributes work in the sequential derivation mode, the implementation of this model

Page 102: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

102 R. Freund, M. Oswald, T. Schirk

'

&

$

%

(0)

'

&

$

%

(store, y + price)'

&

$

%

(customer, x− price,

happy)

Fig. 9. The customer is happy again.

works with a reasonable time behaviour, and we are going to use it for testing various strategies forbusiness transactions like auctions as well as for running simulations of different strategies for otherbusiness transactions.

Acknowledgements

The work of Marion Oswald is supported by FWF-project T225-N04.

References

1. G. Ciobanu, Gh. Paun, M.J. Perez-Jimenez, eds.: Applications of Membrane Computing. Springer, Berlin,2005.

2. R. Freund: Asynchronous P systems. In G. Mauri, Gh. Paun, M.J. Perez-Jimenez, G. Rozenberg, A.Salomaa, eds., Membrane Computing. International Workshop WMC5, LNCS 3365, Springer, 2005, 36–62.

3. Gh. Paun: Membrane Computing - An Introduction. Springer, Berlin, 2002.4. Gh. Paun, R. Paun: Membrane computing as a framework for modeling economic processes. Proc.

SYNASC 05, IEEE Press, 2005, 11–18.5. Gh. Paun, R. Paun: Membrane computing and economics: Numerical P systems. Fundamenta Informati-

cae, 73, 1-2 (2006), 213–227.6. R. Paun: Producers, retailers, and their investments. A membrane computing approach. Submitted, 2005.7. A. Salomaa, G. Rozenberg, eds.: Handbook of Formal Languages. Springer, Berlin, 1997.8. T. Schirk: Modeling Specific Business Transactions by Membrane Systems with Attributes. Diploma thesis,

Technical Univ. of Vienna, draft, 2006.9. H.R. Varian: Intermediate Microeconomics - Fifth Edition. W.W. Norton & Company Inc., New York,

2000.10. The P systems webpage: http://psystems.disco.unimib.it

Page 103: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

A Membrane Computing View on Tumours

Miguel A. Gutierrez-Naranjo, Mario J. Perez-Jimenez,Agustın Riscos-Nunez, Francisco J. Romero-Campero

Dpto. de Ciencias de la Computacion e Inteligencia ArtificialE.T.S. Ingenierıa Informatica, Universidad de SevillaAvda. Reina Mercedes s/n, 41012, Sevilla, Espanamagutier, marper, ariscosn, [email protected]

Abstract. In this paper we discuss about the potential usefulness of P systems as natural toolsfor modelling tumours. This is done both from a macroscopic point of view, by considering thetumour as a growing mass of cells, as well as from a microscopic point of view, by studyingmolecular signalling pathways. In each of these approaches we work with appropriate variantsof P systems

1 Introduction

Natural Computing is a field that tries to abstract ideas and new paradigms for introducing modelsof computation inspired by Nature. One of the branches within this field is Membrane Computing,presented by Gh. Paun in [16], where the basic computing devices are the so-called membrane systemsor P systems.

Roughly speaking, a P system consists of a cell-like membrane structure in the compartments ofwhich one places multisets of objects which evolve according to given rules in a synchronous non-deterministic maximally parallel manner1. P systems offer two levels of parallelism: on the one hand,the rules within a membrane are applied simultaneously; on the other hand, these operations areperformed in parallel in all the membranes of the system.

To sum up, P systems have the following properties:

– P systems can be considered as structures of nested processors placed in a tree-structure, i.e., wecan consider computations on many scales.

– If we consider P systems where membranes can be dissolved, divided or created, we usually obtaina geometrical shape too irregular to be described in traditional geometrical language, both locallyand globally.

– Computations in P systems are obtained by the application of a finite set of rules. The applicationof these rules allows to obtain a configuration Cn+1 from another configuration Cn.

– The computation of a P system is discrete, i.e., it is a process performed step by step.

In this paper we address the issue of using P systems in order to provide a better understandingof tumours. From an intra-cellular point of view, one can try to express the molecular interactionshappening in the cytoplasm of a tumoral cell by means of P systems. We will recall some ideas from[20], where the EGFR signalling pathway is studied, but we are not going to focus on this approach.We will also consider a macroscopical point of view, looking at the whole tumour.

The rapid growth and resilience of tumours make it difficult to believe that they behave as disor-ganised and diffuse cell mass and suggests instead that they are emerging, opportunistic systems. Ifthis hypothesis holds true, the growing tumour and not only the single cell must be investigated andtreated as a self-organising complex dynamic system. This cannot be done with currently available invitro/in vivo models or common mathematical approaches.

We follow here a number of recent studies (see [1, 3, 5, 10, 11, 14, 21, 22]) postulating that tumourshave a fractal shape. The massive parallelism, the synchronous application of the rules, and the discrete

1 A layman-oriented introduction can be found in [18], a formal description in [17], and further bibliographyat [24].

Page 104: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

104 M.A. Gutierrez-Naranjo et al.

nature of their computation, among other features, lead us to consider P systems as natural tools fordealing with fractals. Several examples of fractals represented by P systems are presented, and wepropose to use P systems as a new tool for representing and simulating the fractal nature of tumours.

The paper is organised as follows. First we deal with tumours at macroscopic level. We recall dedefinition of P systems with membrane creation in Subsection 2.1, and we explain how the evolutionof a P system can be linked to the construction of a classical fractal, the Koch curve. Subsection 2.3concludes the macroscopic approach, and it addresses random fractals, which are closer to the realshape of tumours. Section 3 is devoted to the intracellular scenario of tumoral cells. In this case werecall the definitions of continuous P systems and we briefly present the EGFR signalling pathway inSubsection 3.2.

2 Macroscopic View: Tumours and P Systems

An individual tumour cell has the potential, over successive divisions, to develop into a cluster of tu-mour cells. Further grow and proliferation leads to the development of an avascular tumour consistingof approximately 106 cells which feed on oxygen and other nutrients present in the local environment.

In [8] we proposed a first approach to the simulation and the study of the growth of a tumourby using P systems. The model followed there was the spheroid model. The vast majority of classicmodels apply specifically to multicell spheroids which have a characteristic structure of a proliferatingrim and a necrotic core, separated by a band of quiescent cells.

The spheroid model has very nice mathematical properties, but recent studies in the growth oftumours show that the surface of the tumour is far from being a smooth surface. Even more, thereseems to be a relation between the fractal dimension of the surface of the tumour and the stages of thedisease. In [11], Kikuchi et al. point that the surface of solid components in cystic epithelial ovariancancers has a fractal structure and the mean fractal dimension may differ according to the stages ofthe disease and histologic types. Fractal geometry (. . . ) can be used for describing the pathologicalarchitecture of ovarian tumours and for yielding insights into the mechanisms of tumour growth.

These studies show the necessity of going deeper in the relation between fractals and tumours, andthis is maybe one of the most promising applications of fractals. This study will need new tools forhandling information and computing/simulating/predicting results. As pointed by Baish and Jain in[1]: If carefully applied, fractal methods may someday have a significant impact in our understandingof challenges in treatment delivery and diagnosis of cancer.

Next, we present a variant of P system suitable to bridge Membrane Computing and Fractals,namely P systems with membrane creation.

2.1 P Systems with Membrane Creation

Membranes are created in living cells, for instance, in the process of vesicle mediated transport and inorder to keep molecules close to each other to facilitate their reactions. Here we abstract the operationof creation of new membranes under the influence of existing chemical substances to define P systemswith membrane creation.

Recall that a P system with membrane creation is a tuple of the form Π = (O, H, µ, w1, . . . , wm, R)where:

1. m ≥ 1 is the initial degree of the system;2. O is the alphabet of objects;3. H is a finite set of labels for membranes;4. µ is a membrane structure consisting of m membranes labeled (not necessarily in a one-to-one

manner) with elements of H;5. w1, . . . , wm are strings over O, describing the multisets of objects placed in the m regions of µ;6. R is a finite set of rules2, of the following forms:

2 In this paper we will use a weak version of this model, since we do not use dissolution nor communicationrules, but we want to present the model of P system with membrane creation as found in the literature.

Page 105: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

A Membrane Computing View on Tumours 105

(a) [a → v]h, where h ∈ H, a ∈ O and v is a string over O describing a multiset of objects. Theseare object evolution rules associated with membranes and depending only on the label of themembrane.

(b) a[ ]h → [b]h, where h ∈ H, a, b ∈ O. These are send-in communication rules. An object isintroduced in the membrane, possibly modified.

(c) [a]h → [ ]h b, where h ∈ H, a, b ∈ O. These are send-out communication rules. An object issent out of the membrane, possibly modified.

(d) [a]h → b, where h ∈ H, a, b ∈ O. These are dissolution rules. In reaction with an object, amembrane is dissolved, while the object specified in the rule can be modified.

(e) [a → [v]h2 ]h1 , where h1, h2 ∈ H, a ∈ O and v is a string over O describing a multiset ofobjects. These are creation rules. In reaction with an object, a, a new membrane is created.This new membrane is placed inside of the membrane of the object which triggers the ruleand has associated an initial multiset v and a label, h2.

Rules are applied according to usual principles in Membrane Computing (see [9] for details).

2.2 The Koch Curve

One of the most important features of fractals is that they are far from being merely mathematicalcuriosities or computational art objects. Fractals are one of the most powerful tools for describingmany natural objects both from alive and non-alive world3.

The seminal work on fractals presented by Mandelbrot [15] in 1982 put the basis of the theory todeal with mathematical sets not sufficiently regular. In a first approach, we can consider that fractalobjects exhibit complexity which holds constant under different scales. A fractal is a shape made ofparts similar to the whole in some way.

Nowadays there is no a definition of fractals which considers every case. Instead of a formal def-inition, a set F is considered a fractal (in informal sense) if it fulfils several properties (see [7] and[23]):

– F has a fine structure, i.e., detail on arbitrary many scales.– F is too irregular to be described in traditional geometrical language, both locally and globally.– Often F has some form of self-similarity.– Usually, its fractal dimension (defined in some way) is greater than its topological dimension.– Fractals are obtained by the application of recursive procedures, usually in a simple way. These

procedures often consist of a few rules.– The computational generation of a fractal is discrete. Fractals are usually defined as the limit of

an iterative process performed step by step.

Self-similarity seems to be one of the fundamental geometrical construction principles in nature.In many plants and also organs of animals, this has led to fractal branching structures. For example,in a tree the branching structure allows the capture of a maximum amount of sun light by the leaves;the blood vessel system in a lung is similarly branched so that the maximum amount of oxygen canbe assimilated (see [19]). Although the self-similarity in these objects is not strict, we can identify thebuilding blocks of the structure.

An in–detail introduction on fractals falls out of the scope of this paper. Let us just present hereone of the classic fractals, the Koch curve [12, 13], and a P system which can be “interpreted” as thisfractal, in a sense that will be discussed below. Following Barnsley [2], in order to describe the fractalwe need to know the initial conditions (or initial configuration in terms of membrane computing) andthe transformation rules, but we also need other ingredient: as in every computational process, westore the information in some kind of structure data and in order to recognise the data as a fractalwe need to give an interpretation to the data.

The geometric construction of the Koch curve can be easily described. Let us begin with a straightsegment K0 which we will consider of length one. In a similar way as in the middle third Cantor set,

3 For more applications of fractals, see, for example, [4, 6, 19, 23].

Page 106: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

106 M.A. Gutierrez-Naranjo et al.

we split K0 into three segments of length 1/3. Then we replace the middle third by an equilateraltriangle and take away its base.

Therefore, the next stage on the construction of the Koch curve, K1 consists of a continuous linecomposed by four straight segments on length 1/3.

Next, we present a P system which can be interpreted as the Koch curve. In each step of compu-tation we have a configuration corresponding to an intermediate step of the construction of the Kochcurve. Let us consider the P system Π = (O, H, µ, w4, R) with O = a, b, c, α, β, γ, H = 1, 2, 3, 4,µ = [ ]4, w0 = abcγ, and R the following set of 16 rules

R1 = [ α → [ abcα ]4 ]1, Ria = [ a → [abcα]1 ]i, i ∈ 1, 2, 3, 4,

R2 = [ β → [ abcβ ]4 ]2, Rib = [ b → [abcβ]2 ]i, i ∈ 1, 2, 3, 4,

R3 = [ α → [ abcα ]4 ]3, Ric = [ c → [abcα]3 ]i, i ∈ 1, 2, 3, 4,

R4 = [ γ → [ abcγ ]4 ]4.

In each configuration, we collect for each elementary membrane the string composed by all thelabels of the intermediate membranes between the considered elementary membrane and the skin, andwe take into account the depth (in the membrane structure) of the elementary membranes as well asthe symbol occurring in the membrane denoted by a Greek letter (which can be either α, β, or γ).

– Each elementary membrane will represent a segment.– The depth of the elementary membrane in the membrane structure will determine the length of

the segment represented by the membrane. We will consider that the skin has depth 0 and thatan elementary membrane at depth k represents a segment of length 1/3k.

– We will use the string of labels of the membranes from the elementary membrane to the skinto “order” the elementary membranes following the order <S defined as follows. Let us considerw1, w2 ∈ H∗ such that w1 is not a suffix of w2 and vice versa (consequently, w1 6= w2), then wewill say that w1 <S w2 if and only if there exist z1, z2, w ∈ H∗ and x1, x2 ∈ H with w1 = z1x2w,w2 = z2x2w and x1 < x2 (where < is an order over H). Note that <S is a sort of lexicographicorder, but starting from right to left.

– Each stage of the construction of the Koch curve consists on a continuous line built with a certainamount of segments, all of them with the same length. If we know the number of such segmentsand their length, then in order to determine exactly an intermediate step of the construction of theKoch curve, the last data that we need is the angle between adjacent segments. This informationis given by the symbol α, β, or γ placed inside the elementary membrane.• If a membrane representing a segment s contains the symbol α, then we will consider that the

following segment has a deviation of π/3 radians with respect to the direction of s.• If a membrane representing a segment s contains the symbol β, then we will consider that the

following segment has a deviation of −2π/3 radians with respect to the direction of s.• Finally, if a membrane representing the segment s contains the symbol γ, we will consider that

it is the last segment of the line and no other segment is after it.

The initial configuration has only the skin and the objects abcγ inside. With the interpretationspecified above, this initial configuration C0 represents a unique segment of length 1/30 = 1. TheGreek symbol inside is γ and, coherently, it means that no other segment is after it.

Fig. 1. First steps for the Koch Snowflake

Page 107: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

A Membrane Computing View on Tumours 107

By the application of rules R4a, R4

b ,R4c , and R4, we obtain the configuration

C1 = [ [abcα]1 [abcβ]2 [abcα]3 [abcγ]4 ]4.

This configuration has four elementary membranes at depth 1 that represent four segments of length1/31. The order among the strings of labels is 14 <S 24 <S 34 <S 44. The first segment (with string14) contains the symbol α. This means that the second segment (with string 24) has a deviationof π/3 with respect the direction of the first one. The second segment contains the symbol β, sowe will consider that the third segment has a deviation of −2π/3 with respect to the second one.Analogously, the fourth segment has a deviation of π/3 with respect to the the third one, since inthe third membrane we found the symbol α. Finally, in the last membrane we found the symbol γ tomark the end point.

With this interpretation, the configuration C1 contains all the necessary information to constructthe stage K1 for building the Koch curve.

After j steps, we reach a configuration with 4j elementary membranes at depth j with a sequenceof angles equal to the stage Kj of the Koch curve.

Thus, the above P system encodes all the information needed to build the Koch curve with anyprecision degree.

2.3 Random Fractals and P Systems

The Koch snowflake is not perceived as a close model for real world fractals (e.g. a coastline or atumour). The reason lies in the lack of randomness. Randomising a deterministic classical fractal isthe first approach generating a realistic natural shape.

Fig. 2. Random Koch Snowflake

For example, the method for including randomness in the Koch snowflake construction requiresonly a very small modification of the classical construction. A straight line segment will be replaced asbefore by a broken line of four segments, each one one-third as long as the original segment. However,there are two possible orientations in the replacement step: the small angle may go either to the left orto the right. If one of these orientations is chosen in each replacement step, we obtain a random Kochcurve. Figure 2 shows a random Koch snowflake. Note that this fractal represents a realistic shape ofa fractal from nature.

In this process some mathematical characteristics of the Koch snowflake will be retained, forexample the fractal dimension of the curve will be the same, the area surrounded is finite but thelength of the curve is infinite, etc., but the visual appearance is drastically different: it looks muchmore like the outline of the island or a tumour than the original Koch curve.

In the previous subsection we presented a P system encoding the Koch curve with an appropriateinterpretation of the objects. It was a deterministic system, and in its computation the configurationCn was identified with the n-th stage in the construction of the fractal.

Page 108: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

108 M.A. Gutierrez-Naranjo et al.

The construction of random fractals with P systems can be performed in a very natural way byusing the non-determinism of P systems. For example, in the first step of the construction of the Kochcurve we start with a straight line and there are two possible new reachable stages. Analogously, wecan modify the P system presented in Section 2.2 and obtain a non-deterministic P system such thattwo possible configurations are reachable from the initial configuration. Each of these configurationscan be interpreted as one of the reachable stages in the construction of the Koch curve.

Let us consider the following P system with initial degree 1,

Π = (O, H, µ, w4, R),

with O = s, ar, br, cr, al, bl, cl, αr, βr, αl, βl, γ, H = 1, 2, 3, 4, µ = [ ]4, w4 = sγ, and R thefollowing sets of rules

[ s → arbrcr ]i[ s → alblcl ]i

i ∈ 1, 2, 3, 4

[αj → α′j ]1[βj → β′j ]2[αj → α′j ]3

j ∈ l, r

[γ → γ′]4

[ aj → [ sαj ]1]i[ bj → [ sβj ]2]i[ cj → [ sαj ]3]i

i ∈ 1, 2, 3, 4j ∈ l, r

[α′j → [ sαj ]4 ]1[β′j → [ sβj ]4 ]2[α′j → [ sαj ]4 ]3

j ∈ l, r

[ γ′ → [ sγ ]4 ]4

In this case, the interpretation of the P system as a fractal is a little bit more complicated.In the same way as in the deterministic Koch curve, we will consider the elementary membranes,their depth, and for each elementary membrane, the string of labels of the membranes from theelementary membrane to the skin and the special symbol placed in the membrane, taken from the setαr, βr, αl, βl, γ.

The interpretation of these special symbols is quite natural. In the deterministic case, if a membranerepresenting a segment s contains the symbol α, we considered that the next segment had a deviationof π/3 radians with respect to the direction of s. In the random case, αr represents a deviation ofπ/3 and αl a deviation of −π/3. Analogously, βr represents a deviation of −2π/3 and βl a deviationof 2π/3. Finally, if a membrane contains the symbol γ, we will consider that it represents the lastsegment of the line, and no other segment comes after it.

The main difference consists on that in this P system only configurations in an even step will beinterpreted as intermediate stages of the construction of the fractal. Odd steps are auxiliary stepswithout geometrical interpretation.

The remaining information is stored in a similar way as in the deterministic case.

3 Microscopic View: P Systems Modeling Molecular Interactions

Besides modularity and easy extensibility, in favor of our approach we also mention the easy under-standability and programmability, features not easily achieved in standard models used nowadays,mainly based on differential equations. In this section we propose P systems as a framework for mod-eling cancerous processes. Instead of considering the tumour as a whole, here we use P systems inorder to simulate the molecular pathways inside the cell.

3.1 Continuous P Systems

Usual variants of P systems are discrete models of computation where in every step the rules areapplied in a maximal way an integer number of times; we refer to [17] for details. Here we use avariant whose systems can evolve in every instant applying a maximal set of rules a positive realnumber of times determined by a certain function K. This variant is inspired by the fact that in vivochemical reactions evolve in a continuous way following a rate that depends on the concentration ofthe reactants.

Page 109: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

A Membrane Computing View on Tumours 109

Roughly speaking, a continuous P system consists of a membrane structure, a hierarchically ar-ranged set of membranes, where one places multisets of objects that represent the concentration ofchemical substances. Usual P systems deal with discrete multisets over an alphabet Σ but here wework with continuous multisets (mappings from Σ to R+, the set of non-negative real numbers). Thesemultisets evolve according to a finite set of rules that represent chemical reactions.

A continuous P system of degree n ≥ 1 is a construct, Π = (Σ, µ,w1, . . . , wn,R,K), where:

1. Σ = c1, . . . , cm is the alphabet of objects.2. µ is a membrane structure (a rooted tree) consisting of n membranes (nodes of the tree) labeled

with 1, . . . , n.3. w1, . . . , wn are continuous multisets associated with each membrane of µ.4. R is a finite set of rules of the form:

u [ v ]i → u′[ v′ ]i,

where u, v ∈ Σ∗ represent the reactants, u′, v′ ∈ Σ∗ represent the products, and i ∈ 1, . . . , n isthe label of the membrane where the reaction is carried out.

5. K is a map fromR×Mn×m(R+) to R+, called the rate of application function, whereMn×m(R+)is the set of matrices of order n×m over R+.

A configuration of a continuous P system Π is an instantaneous description of it, that is, an assignmentof continuous multisets to the membranes of the system that can be seen as an association of eachregion with the concentration of chemical substances present in it. Formally, a configuration of Π isa matrix of Mn×m(R+) where the element in row i and column j represents the multiplicity of theobject cj in the membrane i.

Then, the rate of application function K associates with each rule and each configuration, a non-negative real number considered as the rate of application of the rule.

An evolution E of a continuous P system associates with each instant t ∈ R+ a configuration E(t)of the system. For each t ∈ R+ and i, 1 ≤ i ≤ n, we denote by vi(t) the continuous multisets overΣ = c1, . . . , cm defined as follows: (vi(t))(cj) = aij(t) for 1 ≤ j ≤ m, where aij(t) is the element inrow i and column j from E(t). So, we can describe the configuration E(t) by a tuple (v1(t), . . . , vn(t)).

The way a continuous P system, Π = (Σ, µ,w1, . . . , wn,R,K), evolves is determined by the initialmultisets w1, . . . , wn and the rate of application function K. We define the initial configuration of Πas the tuple (w1, . . . , wn).

The rules are applied during the evolution of the system in a continuous way according to the rateof application function K. At an instant t ∈ R+, a rule r ∈ R is applied exactly K(r,E(t)) times (inthis sense, we can say that the rules are applied in a K-maximal way). Given an object cj ∈ Σ anda membrane i, we denote by productioni(cj) (resp. consumptioni(cj)) the set of rules where cj is aproduct (resp. a reactant) in membrane i. Therefore the real number (vi(t))(cj) is determined by thenext formula:

(vi(t))(cj) = (vi(0))(cj) +∑

r∈productioni(cj)

∫ t

0

K(r,E(s)) ds −

−∑

r∈consumptioni(cj)

∫ t

0

K(r,E(s)) ds,

where vi(0) is the initial continuous multiset wi.In computers, real numbers are represented by a finite set of rational numbers. Therefore, like

in most continuous models we need to develop approximations in order to simulate evolutions ofcontinuous P systems in computers.

As shown above, in order to determine the effect of a rule on the evolution of a system during aninterval of time [t, T ] we only need to compute an integral of the rate of application function K. Hence,in order to approximate the evolution of a continuous P systems in a finite set of instants t0, · · · , tqwe can use any suitable known numerical method to approximate integrals. Here for simplicity we usethe rectangle rule; that is, we suppose tl+1− tl = p is small enough to assume that K remains constantand equal to K(r,E(tl)) in the interval [tl, tl+1] for l = 0, . . . , q − 1. With this assumption we can

Page 110: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

110 M.A. Gutierrez-Naranjo et al.

approximate the effect of a rule during an interval of time of length p by Ef(r, tl, tl+1) ≈ pK(r,E(tl)).Therefore, we have approximated the evolution of a continuous P system by the computation of anusual discrete P system working in a pK bounded parallel manner.

3.2 EGFR Signalling Cascade

In this subsection we briefly describe a EGFR signalling cascade4. During the signal transductionwhich takes place in this cascade, the information about the concentration of the EGF in the outsideof the cell is translated into kinetic information inside the cell by EGFR phosphorylation.

The epidermal growth factor receptor (EGFR) belongs to the tyrosine kinase family of receptors.The binding of the epidermal growth factor (EGF) to the extracellular domain of EGFR inducesreceptor dimerisation and autophosphorylation of intracellular domains. Then, on the one hand, amultitude of proteins are recruited starting a complex signalling cascade and, on the other hand, thereceptor follows a process of internalisation, ubiquitination and degradation. EGFR has been identifiedas a key biological target for the development of novel anticancer therapies.

In our model we consider two marginal pathways and two principal pathways starting from thephosphorylated receptor.

In the first marginal pathway phospholipase C-γ (PLCγ) binds to the phosphoryrated receptor,then it is phosphorylated (PLC∗γ) and released into the cytoplasm where it can be translocated to thecell membrane or desphosphorylated. In the second marginal pathway the protein PI3K binds to thephosphoryrated receptor, then it is phosphorylated (PI3K∗) and released into the cytoplasm where itregulates several proteins that we do not include in our model.

Both principal pathways lead to activation of Ras-GTP. The first pathway does not depend on theconcentration of the Src homology and collagen domain protein (Shc). This pathway consist of a cyclewhere the proteins growth factor receptor-binding protein 2 (Grb2) and Son of Sevenless homologprotein (SOS) bind to the phosphorylated receptor. Later the complex Grb2-SOS is released in thecytoplasm where it dissociates into Grb2 and SOS.

In the other main pathway Shc plays a key role, it binds to the receptor and it is phosphorylated.Then either Shc∗ is released in the cytoplasm or the proteins Grb2 and SOS binds to the receptoryielding a four protein complex (EGFR-EGF2*-Shc*-Grb2-SOS). Subsequently this complex dissoci-ates into the complexes Shc∗-Grb2-SOS, Shc∗-Grb2 and Grb2-SOS which in turn can also dissociateto produce the proteins Shc∗, Grb2 and SOS.

Finally, Ras-GTP is activated by these two pathways and in turn it stimulates the Mitogen Ac-tivated Protein (MAP) kinase cascade by phosphorylating the proteins Raf, MEK and ERK. Subse-quently phosphorylated ERK regulates several cellular proteins and nuclear transcription factors thatwe do not include in our model.

There exist cross-talks between different parts and cycles of the signalling cascade which suggesta strong robustness of the system.

For a more detailed description of the cascade see the literature listed in the bibliography.We have developed a model of the signalling cascade using a continuous P system ΠEGF =

(Σ, µ,we, ws, wc,R,K). Our model consists in more that 60 proteins and complexes of proteins and160 chemical reactions.• Alphabet: In the alphabet Σ we collect all the proteins and complexes of proteins that take partin the signalling cascade.•Membrane Structure: We consider three relevant regions, namely the environment, the cell surfaceand the cytoplasm. We represent them in a nested membrane structure as the membranes labeled with:e for the environment (external region), s for the cell surface and c for the cytoplasm.• Initial Multisets: In the initial multisets we represent the initial concentrations of the chemicalsubstances in the environment, the cell surface and the cytoplasm. These concentrations have beenobtained from references in the literature.• Rules and Rate of application function: In the rules we model the chemical reactions describedwhich form the signalling cascade. To model the reactions we use the Law of Mass Action which states

4 see www.gcn.us.es/egfr.pdf for details.

Page 111: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

A Membrane Computing View on Tumours 111

that the rate of a reaction is proportional to the product of the concentrations of the reactants. Thatis, if we have a reaction of the form:

r1 + · · ·+ rk → p1 + · · ·+ pk′ ,

then the rate of this reaction is k|r1| · · · |rn|, where k is called kinetic constant.As an example of the procedure we have followed to develop our model, we next present the

derivation of one of the 160 rules.Let us consider the binding of EGF to EGFR:

EGF EGFR → EGF-EGFR

We know from biological experiments that EGF, which is present in the environment, binds toEGFR, which is present in the cell surface at a rate of 0.003 nM−1s−1. According to this, the rel-evant membrane in this reaction is the cell-surface because it separates the two regions involvedin this reaction. Besides following the Mass Action Law the reaction takes place at a velocity of0.003|EGF ||EGFR|. Therefore, in our model we represent this chemical reaction by the followingrule and rate of application:

EGF [EGFR]s → [EGF-EGFR]s K(r,E(t)) = 0.003|EGF (t)|e|EGFR(t)|sSupplementary information and details about the model are available on the web pagewww.gcn.us.es/egfr.pdf.

4 Final Remarks

In this paper two approaches bridging cancer research and membrane computing have been presented.At the macroscopic level, fractals are nowadays one of the most powerful tools for describing the

shape of tumours in a realistic manner. Nature is written in fractal language and we need tools fordealing easily with this language. In this paper we present a first work checking whether P systemsprovide an appropriate tool for handling fractals. On the one hand, the massive parallelism, thesynchronous application of the rules, and the discrete nature of their computation, among otherfeatures, lead us to consider P systems as natural tools for dealing with fractals. On the other hand,the main drawback is that P systems work with data structures which do not have a geometricalintuition, in the sense that concepts as length or angle are not in membrane computing terminology.This leads us to the necessity of giving a geometrical interpretation to the data of the P systems inorder to consider it as a fractal.

At the microscopic level, we show that continuous membrane systems are a reliable framework formodelling networks of biochemical signalling cascades, because the results obtained using this modelare in well agreement with experimental data. We intend to expand our model to comprise otherinteractions between proteins which are known to play a key role in the regulation of cell cycle andtumour genesis.

Acknowledgement

Work supported by project TIN2005-09345-C04-01 of Ministerio de Educacion y Ciencia of Spain,cofinanced by FEDER funds, and by the Project of Excellence TIC-581 of the Junta de Andalucıa.

References

1. J.W. Baish, R.K. Jain: Fractals and cancer. Cancer Research, 60 (2000), 3683–3688.2. M.F. Barnsley: Lecture notes on iterated function systems. Proceedings of Symposia in Applied Mathe-

matics, AMS, 39 (1989), 127–144.3. A. Bru, J.M. Pastor, I. Fernaud, I. Bru, S. Melle, C. Berenguer: Super-rough dynamics on tumour growth.

Physiscal Review Letters, 81, 18 (1998), 4008–4011.

Page 112: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

112 M.A. Gutierrez-Naranjo et al.

4. A. Bunde, S. Havlin, eds.: Fractals in Science. Springer-Verlag, 1995.5. S.S Cross: Fractals in pathology. Journal of Pathology, 182 (1997), 1–8.6. M. Dekking, J.L. Vehel, E. Lutton, C. Tricot, eds.: Fractals: Theory and Applications in Engineering.

Springer-Verlag, 1999.7. K. Falconer: Fractal Geometry. Mathematical Foundations and Applications. John Wiley & Sons, 1990.8. M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, F.J. Romero-Campero: Simulating avascular tumours with

membrane systems. In Third Brainstorming Week on Memebrane Computing (M.A. Gutierrez-Naranjo,A. Riscos-Nunez, F.J. Romero-Campero, D. Sburlan, eds.), RGCN Report 01/2005. Fenix Editora, Sevilla,2005, 185–195.

9. M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez: Fractals and P Systems. In Proceedings of the Fourth Brain-storming Week on Membrane Computing, Vol. II (C. Graciani Dıaz, Gh. Paun, A. Romero-Jimenez, F.Sancho-Caparrini, eds.), Fenix Editora, (2006), 65–86.

10. K.M. Iftekharuddin, W. Jian, R. Marsh: Fractal analysis of tumour in brain MR images. Machine Visionand Applications, 13 (2003), 352–362.

11. A. Kikuchi, S. Kozuma, K. Sakamaki, M. Sito, G. Marumo, T. Yasugi, Y. Taketani: Fractal tumour growthof ovarian cancer: Sonographic evaluation. Gynecologic Oncology, 87, (2002), 295–302

12. H. von Koch: Sur one courbe continue sans tangente, obtenue par une construction geometriqueelementaire. Arkiv for Matematik, 1 (1904), 681–704.

13. H. von Koch: Une methode geometrique elementaire pour l’etude de certaines questions de la theorie descourbes planes. Acta Mathematica, 30 (1906), 145–174.

14. G. Landini, J.W. Rippin: How important is tumour shape? Quantification of the epithelial-connectivetissue interface in oral lesions using local connected fractal dimension analysis. Journal of Pathology, 179(1996), 210–217.

15. B.B. Mandelbrot: The Fractal Geometry of Nature. W.H. Freeman, New York, 1982.16. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61, 1 (2000), 108–143.17. Gh. Paun: Membrane Computing. An Introduction. Springer-Verlag, Berlin, 2002.18. Gh. Paun, M.J. Perez-Jimenez: Recent computing models inspired from biology: DNA and membrane

computing. Theoria, 18 (2003), 72–84.19. H.-O. Peitgen, H. Jurgens, D. Saupe: Fractals for the Classroom. Springer-Verlag, 1992.20. M.J. Perez-Jimenez, F.J. Romero. A study of the robustness of the EGFR signalling cascade using con-

tinuous membrane systems. In J. Mira, J.R. Alvarez (eds.) Mechanisms, symbols and models underlyingcognition. Lecture Notes in Computer Science, 3561 (2005), 268-278.

21. A.N dos Reis, J.C.M. Mombach, M, Walter, L.F. de Avila: The interplay between cell adhesion andenvironment rigidity in the morphology of tumors. Physica A, 322 (2003), 546–554.

22. R. Sedivy, S. Thumer, A.C. Budinsky, W.J. Kostler, C.C Zielinski: Short-term rythmic proliferation ofhuman breast cancer cell lines: Surface effects and fractal growth patterns. Journal of Pathology, 197(2002), 163–169.

23. R.F. Voss: Fractals in nature: From characterization to simulation. In The Science of Fractal Images (H.-O.Peitgen, D. Saupe, eds.), 1988, 21–70

24. P systems web page: http://psystems.disco.unimib.it/

Page 113: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 114: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 115: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 116: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 117: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 118: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 119: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 120: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 121: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 122: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 123: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired
Page 124: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Paun’s Systems as Models of Economic Systems

Waldemar Korczynski

University of Arts and Sciences Kielceul. WesoÃla 52 PL-25359, Kielce, Poland

[email protected]

Abstract. In the paper a concept for modeling the economic systems by the formalism ofPaun’s systems is proposed. The main idea is to represent economic systems as homomorphicimages of Petri nets corresponding to the (super)cells of Paun’s systems.

1 Introduction

Mathematical models used in the modeling of economic systems usually exploit “computational”mathematical tools like various methods of linear algebra or calculus. Economic systems are usuallymodeled by methods of linear algebra (e.g. linear programming), game theory (the market) and first ofall with the methods of the classical differential and integral calculus. Simulation and graph-theoreticmethods are used rather seldom. The researchers use very advanced mathematical tools but thepractitioners use methods known from their study. Perhaps the most often used tools are connectedwith various versions of PERT nets and Gantt charts which are the basis for many computer programsused in management. One of the reasons is probably the fact that the economists usually prefer thingsthat are measurable over that are not measurable (as appeared to). However, simulation and graph-theoretic methods are of great importance in the process of understanding and the understanding ofthe economic problems as well. Modeling methods like Petri nets or Paun’s systems belong to this kindof description and simulation tools. There exist many problems with the acceptation of such models byeconomists. They are oriented mostly on calculation and accept practically numerical “information”only. Some exemptions are managers who sometimes ask not only “how many?”, but also “how to do(something)?”.

This paper is in a sense inspired by the papers [12], [11], [3] and [9]. The two first ones proposesome enrichment of the standard Paun’s system, the second and third ones describe (the semanticof) Paun’s systems by Petri nets. From [11] is taken the “ideology” of the way of seeing economicsystems, from [3] and [9] the connection between Paun’s systems and Petri nets. The idea of thispaper is to exploit the (bi)topological representation of Petri nets as (bi)topological spaces describedin [6]. Such a topological presentation allows for a simple intuitive description of the notion of regionand membrane. Economic systems are seen as Petri nets with distinguished membrane systems. Everysuch membrane system may be obtained by synchronization of some input- and output-transitions ofthe parts (organization units) of the system. These parts may be connected in many ways dependingon which transitions should be synchronized.

The paper exploits set theory and some elementary notions of Paun’s systems and Petri nets theory(see e.g. [10] and [13]).

The origins of the one-sorted definition of graphs probably come from the “French school of categorytheory” (cf. [7] or [8] where some references can be found).

2 Paun’s Systems

By a membrane system we mean any tree decorated by regions and membranes. Regions are objectswhich may contain some other objects and are separated from the environment by membranes. Anyobject has a unique membrane. The objects allocated in regions may be (multisets of) other regions,evolution rules and tokens. Evolution rules are divided into two types.

The token-processing rules may be seen as some methods describing the way of “token-processing”;they (the tokens) may be “consumed” and “created”. The rules determine which tokens are consumed

Page 125: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Paun’s Systems as Models of Economic Systems 125

and where the new tokens should be created (the tokens consumed by a rule have to be in the sameregion as the rule). So, a rule may be seen as a pair of the form

ρ = consumed tokens ½ (created tokensr, placer)r∈R0⊆Regions.

The nature of tokens will not be important in the sequel; we assume they are simply objectsallocated in the regions and processed by the system (by the evolution rules). This notation differs abit from the standard notation used in [10].Usually one assumes R0 = here, out) where here denotesthe region containing the rule ρ and out its environment.

The structure-processing rules change the membrane structure i.e. the tree and its labeling. Theymay be seen as pairs of the form

ρ = input tree ½ output tree

In the original definition (see e.g. [10]) only two kinds of rules are allowed: the dissolving rulescanceling a region and transferring its contents into the environment and the splitting rules creatinga copy (copies) of a region (with its contents). By a configuration of Paun’s system we mean anysequence

Π = (membrane structure, (Tokensρ)ρ∈Regions, (Rulesρ)ρ∈Regions)

where (Tokensρ)ρ∈Regions and (Rulesρ)ρ∈Regions) are some multisets of tokens and rules allocated inthe regions of membrane structure. Such a configuration may be seen as a counter-part of the notionof the state of a system. It describes the structure (the membrane structure part) of an object,its contents (the family (Tokensρ)ρ∈Regions describing the allocation of tokens in regions) and thepossible ways of evolution (the family (Rulesρ)ρ∈Regions) of the whole system. Rules may be joinedinto steps being some (multi)sets of rules. Such a step is allowed in a configuration C iff there exist“enough tokens for the rules” contained in the step. An allowed step σ is maximal iff the step σ ∪ρis not allowed for any rule σ. Given configurations C, C′ and a step σ we will say that σ transformsC into C′ (written C[σ > C ′ iff the configuration C′ is the result of independent (“simultaneous”)application of the rules from σ to the configuration C. By an evolution process (a computation) wemean any sequence (Ci, σi)i≤n of configurations and maximal steps such that for any i<n it holdsCi[σi > Ci+1.

Configurations of Paun’s systems are often illustrated by Venn diagrams with ovals decorated bycorresponding (multi)sets of tokens and rules.

Fig. 1. Configuration of Paun system as a labeled tree (a) and as a Venn diagram (b).

The configuration in the above picture consists of six regions and membranes. The root-region isdelimited by the membrane m1 and contains the evolution rule r1, two tokens of the kind a and onetoken of the kind b. The leaf-regions contain rules r4, r5 (the region delimited by m4), r6 (membranem5) and r7, r8 (the region with membrane m6). The (region delimited by the) membrane m2 containsonly the rule r2 and membrane m3 determines an empty region.

Page 126: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

126 W. Korczynski

3 Petri Nets

In [4] and [5] I have shown that Petri nets can be treated as triples of the form N = (X , entry , exit)with X being a set (of elements of the net N) called the carrier of the net N and entry, exit ⊆ X×Xbeing binary relations defined on the whole set X and satisfying the conditions:

(i) entry entry = entry exit = entry,(ii) exit entry = exit exit = exit,(iii) entry (entry\idX) = Ø = entry (exit\idX),(iv) exit (exit\idX) = Ø = exit (entry\idX).So, a Petri net can be seen as a set with two transitive, dense (conditions (i) and (ii)) and non-

extendable (conditions (iii) and (iv)) relations in the set X. The class of homomorphisms of such netsis richer than the class of “classical” homomorphisms of nets. The one-sorted definition of Petri netsallows for a presentation of nets as a generalization of topological spaces, the so called bitopologicalspaces (see.[6]) Let us recall some facts and notions from [6]. For any set X and relation R : X −→ Xsatisfying the condition R2 = R R = R the operation Cl : Pow(X) −→ Pow(X) with Cl(A) =A ∪ R(A). for any A ⊆ X is a topological closure operation in the set X. The topology and theclosure operation determined in a set X by a transitive and dense relation R : X −→ X will be calledinduced by R and denoted by τR and ClR respectively. It can be proved that in such a topology thesingleton x is closed iff x is a fix-point of the relation R. If the relation R : X −→ X is nonextendablein the set X that means if R (R\idX0) = Ø then any one element set x is open iff it is not afix-point of R. The above facts allow us to present Petri nets as the so called bitopological spacesthat means triples of the form (X, τentry, τexit) with τentry and τexit being topologies induced by theoperations entry and exit of the net N. Some details of the construction of the bitopological spaceτ(N) being the bitopolgical presentation of a Petri net N = (X, entry, exit) can be found in [6]. Wenote here only that the morphisms of Petri nets correspond to the so called bicontinuous mappingsof the corresponding (bi)topological spaces, and that this presentation allows for a simply topologicaldescription of many properties nets. In [6] I considered topologies in which the one-element closedsets were the places of a given net. It is easy that all results can be transformed into the case wherethe fix-points are transitions of such a net. The corresponding topology will be determined by therelation entry and exit of the dual net in which the places are the transitions of the “original” net andsimilarly the “new” transitions are the places of the “original” net. So, it is enough to consider onlyone (bi)topological presentation of nets for both points of view (fix-points being places or fix-pointsbeing transitions).

3.1 Regions and Membranes

Let us consider a topological presentation τ(N) = (X, τentry, τexit) of a net N = (X, entry, exit). Asubset R ⊆ X will be called a region in the net N iff it is closed (in both topologies). The frontierof a region is in both topologies the same set. In the fixed-places topologies, it consists of places onlyand in the fixed-transitions topology the elements of it are transitions. In what follows we considerthe second case only. For any region R an element x ∈ Fr(R) will be called an input element iffentry(x) ⊆ X\R & exit(x) ⊆ R and an output element iff exit(x) ⊆ X\R & entry(x) ⊆ R. Let(Ri)i∈I be a family of regions ordered by the set inclusion as follows

Ri v Rj iff Int(Ri) ⊆ Int(Rj)

It is evident that the relation v is a partial order in the family (Ri)i∈I . It is easy to see that thefamily (Ri)i∈I) determines a membrane system P (N, (Ri)i∈I) in the net N . The elements of the family(Ri)i∈I are the regions of the system P (N, (Ri)i∈I) and their frontiers are membranes. The evolutionrules of such a system are given by the transitions of the original net; the transitions belongingto the interiors of the regions are the production rules and those being elements of membranes thetransportation rules. These rules may be synchronized into more complex rules. Such a synchronizationcorresponds to a net homomorphism gluing together independent sets of transitions belonging to thesame region. Let us note a difference between the original definition of Paun’s systems and the notiondescribed above. In the original P-systems regions are ordered in a tree in a sense “strictly”; there

Page 127: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Paun’s Systems as Models of Economic Systems 127

exists no way to transfer an object from a region, say R, to another region R’ if R and R’ are not in theparent-child relation. In systems defined above two children of the same parent may have non-emptyintersection of membranes that means they may communicate immediately (see fig. 2.a.). It is alsopossible to cross through a transition belonging to the intersection of a parent and child membranesas it is illustrated in fig. 2.b..

Fig. 2. Possible allocation of membranes.

The maximal independent subsets of membranes determine the potential (transportation) stepspossible in the system. They are (correspond to) the evolution rules. The notion of an evolutionprocess (in the same membrane structure) may be thus defined analogously as in the “classical”Paun’s systems.

Let us recall; frontiers of regions and membranes may consist of places or transitions. The choiceof the kind of elements of membranes depends on the viewpoint of the system designer.

4 Economic Systems

In this part of the paper we describe a point of view which presents economic systems as homomor-phic images of some (families of) Petri nets. An economic system will be seen as a black box withdistinguished inputs and outputs. They are potential only; any output of such a system may be seenas an export-proposal, an input as an import-possibility. One can say the outputs and inputs are theplaces or elementary processes which may be activated and then they can transfer some objects fromthe system into the “outer space” or bring objects from the “environment” of the system into its“interior”. Any system has usually many such “inputs” and “outputs” and the majority of them willnever be activated. An activation of an input of a system, say S, means that this input has been con-nected to an output of the environment of the system and that they both form a kind of transfer-tooltransporting some objects from the environment into the system. The activation of an output may beseen similar. The same holds if we consider two independent systems. In this case each of them is theenvironment for the other one. If we see both systems as Petri nets, then the activation of their inputsand outputs may be seen as a homomorphism of the (sum of) nets N and N’ into a new net. Such ahomomorphism glues together only some inputs with some outputs. This situation may be illustratedas follows.

In the above picture systems N and N’ have been connected by activation of the inputs a and bof N which have been glued together with the outputs e and f of N; respectively. The outputs e andf thus have been activated as well. Both inputs and outputs here are transitions of the correspondingnets. The analogous situation when nets are being connected by places, is illustrated in figure 4.

Two systems may also be joined by transitions and places as it is illustrated in figure 5.The joining of systems by places may be seen as not reasonable; such a connection means that one

system puts some objects into a place and the second one may take them but it is not necessary.The objects may stay in this place forever. This is a situation where the place is in a sense “shared”between two systems.

In order to enable such a merging of systems we have to mark out in them the inputs and outputswhich may be connected. So we need a symmetric relation

Page 128: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

128 W. Korczynski

Fig. 3. Joining of systems by activation of some inputs and outputs.

Fig. 4. Joining of systems by places.

con ⊆ Inputs×Outputs

describing which input may be (let us recall; this is a possibility only) joined with which output. Thecorresponding homomorphism, say f, is con-admissible iff

f(x) = f(y) =⇒ (x, y) ∈ con.

Now let N = (X, entry, exit) be a Petri net (system modeled by the N) and (Ri)i∈I be the familyof regions of a membrane structure in N . Let us define the family of differences

Si = Cl(Ri \⋃Rj : Rj ⊆ Ri)

The elements of this family will be called cell-frames of the corresponding system (net). Theycorrespond to single organization units of the economic system modeled by the net N. Let us note; sucha unit is not structured in this sense that it contains no other units. The intersection of two cell-framesis a frontier set in both topologies τentry and τexit. Cell-frames may have non-empty intersections oftheir frontiers but they don’t have any common points of their interiors. The (structure of the) wholesystem consists of such cell frames in this sense that the system (the net N) may be seen as thehomomorphic image of the direct sum oft the family of all its cell frames.

Now let (Ni = (Xi, entryi, exiti))i∈I be a family of Petri nets corresponding to some economic sys-tems (∆i)i∈I . Each element of the family (Ni)i∈I has its own subsets of Inputs(Ni) and Outputs(Ni)The inputs are transitions satisfying the condition entry(x) = Ø. The outputs are defined in a similarway. Let

con =⋃

i,j∈I

conij , conij ⊆ Inputs(Ni)×Outputs(Nj)

be a symmetric actualization relation. Any con-admissible homomorphism

h :∐

i∈I

Ni −→ N

Page 129: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Paun’s Systems as Models of Economic Systems 129

Fig. 5. Merging of systems by places and transitions.

determine a Petri net with distinguished partition into some subnets. The images h(Xi) may beallocated in the net N in many ways. The homomorphic image of h will be called the composition ofthe systems ∆i iff there exists a membrane system, say M , such that for any i ∈ I the net h(Ni) is acell of M .

The above construction is simply a scheme of the well known operation of joining some systemsinto a bigger one. In the case of economic or social systems the crucial point of such a merging isthe question about the legality of the merging operation. One of the ways of describing this legalityby proving that any active input of a system, say S, has been joined with an output of anothersystem, say S′, in a permissible (legal) way. The admissibility of such a joining may be described byan actualization relation in a very simple way.

5 Concluding Remarks

Paun’s systems seen to be a good tool for the modeling of systems in which the concurrency isconnected with a kind of hierarchy. The last one needn’t be “competence hierarchy”, but can also be akind of hierarchical organization of “access - possibilities”. Such a restriction of the reachability of theresources of a system (places and transitions of the corresponding net) is typical for many real existingsocial and economic systems (see for example [1]). The topological description of such a restrictionmay be more intuitive than other ways of modeling these aspects of economic systems.

The proposed approach to hierarchical concurrent systems may be used for modeling variousobjects. The paper presents some possibilities of modeling economic objects. We try to describe largeeconomic units as Paun systems with additional “methods” allowing the consideration of measurableaspects of production particularly various models of accounting. Accounting may be seen as a kind ofhomomorphism from production systems into an abstract system consisting of accounts and money(cash) flow. This account-system is strictly hierarchical organized and may be seen as a special Paunsystem. Any detailed description of this accounting model would be too big to be enclosed in aconference paper. The idea is to map some economic events into “accounting events” that means someregistration of these events into (always at least two) accounts.

References

1. J. Bartosik: Membrany dynamiczne w modelowaniu systemow ekonomicznych. Submitted, 2006.2. J.C. Kelly: Bitopological spaces. Proc. London. Math. Soc., 3, 13 (1963), 71–89.3. J. Kleijn, M. Koutny, G. Rozenberg: Towards a Petri net semantics for membrane systems. In R. Freund,

G. Lojka, M. Oswald, Gh. Paun, eds.: Pre-Proc. of Sixth International Workshop on Membrane Computing(WMC6), Vienna, June 18-21, 2005, 439–460.

4. W. Korczynski: Some elementary notions of the theory of Petri nets. Formalized Mathematics (Univ.Catholique de Louvain), 1, 5 (1990), 949–953.

5. W. Korczynski: On a notion of Petri net morphisms. Archiwum Informatyki Teoretycznej i Stosowanej, 8,3-4 (1996), 383–399.

Page 130: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

130 W. Korczynski

6. W. Korczynski: On a topological presentation of Petri nets. Dem. Math., 38, 4 (2005), 761–771.7. S. Mac Lane: Categories for the Working Mathematician. Springer-Verlag, New York, 1971.8. D. Hasse, M. Michler: Theorie der Kategorien. Akademie-Verlag, Berlin, 1976.9. A. Obtulowicz: Mathematical models of uncertainty with a regard to membrane systems. Natural Com-

puting, 2, 3 (2003), 251–263.10. Gh. Paun: Membrane Computing. An Introduction. Springer-Verlag, Berlin, 2002.11. Gh. Paun, R. Paun: Membrane computing and economics: Numerical P systems. Fundamenta Informati-

cae, 73, 1-2 (2006), 213–227.12. Gh. Paun, R. Paun: Membrane computing as a framework for modeling economic processes. Proc.

SYNASC 05, IEEE Press, 2005, 11–18.13. P.H. Starke: Analyse von Petri Netz Modellen. Teubner-Verlag, Stuttgart, 1990.

Page 131: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Combining Brane Calculus and Membrane Computing

Shankara Narayanan Krishna

Department of Computer Science and EngineeringIndian Institute of Technology, Bombay

Powai, Mumbai, India 400 [email protected]

Abstract. Operations with membranes are essential both in brane calculi as well as in mem-brane computing. In the recent past, attempts [2, 4–6, 8] have been made to bridge these closelyrelated areas. In [4], a model of membrane computing was proposed, wherein the operationsconsidered were inspired from brane calculi. In this model, the objects were placed on the mem-branes rather than inside the membranes. Recently, a variant of this model, which takes intoconsideration, not only the action of embedded proteins, but also that of integral and periph-eral proteins was introduced in [8]. Some universality results and open problems for this modelwere reported in [8]. In this paper, we investigate in detail, the power of this more generalmodel introduced in [8]. We have come up with several combinations of operations that giveuniversality.

1 Introduction

Membrane computing [9] and brane calculi [3] start from the same reality, viz., the living cell, but theydevelop in different directions and have different objectives. Membrane computing tries to abstractthe computing power of biologically inspired models in the Turing sense, whereas brane calculi workin the framework of process algebra. In membrane computing [9], [10], [12], one works with multisetsof objects placed in the regions delimited by the membranes of cell-like membrane structures and theevolution of these objects is based on different kinds of multiset/string processing rules.

In membrane computing, membranes are supposed to be compartments of a cell, and computationis carried out on the objects in these compartments. Brane calculi, on the other hand, put emphasis onthe structure, properties and evolution of membranes. In brane calculi, one works only with objects –called proteins – placed on membranes, while the evolution is based on membrane handling operations,such as exocytosis, phagocytosis, etc. The two approaches are somewhat dual to each other (membraneoperations are used also in membrane computing), and it is just natural to combine features from thetwo areas. All these similarities and differences evoked interest in bridging the gap between the two. Afirst attempt to bring together brane calculi and membrane computing was made in [4], wherein themodeling was done precisely in the same way as it happened in brane calculi: always work with proteinsembedded in the membranes, there were no ‘objects’ inside any of the membranes. A computationhowever, was defined in the usual way that happens in the membrane computing area: rules are appliedto the embedded proteins in a maximally parallel manner, and halting configurations were used tointerpret the results. More results combining brane calculi and membrane computing can be found in[2], [6] and [5].

However, in biology, many reactions taking place in the compartments of living cells are con-trolled/catalyzed by the proteins embedded in the membranes bilayer. For instance, it is estimatedthat in the animal cells, the proteins constitute about 50% of the mass of the membranes, the restbeing lipids and small amounts of carbohydrates. There are several types of such proteins; one simpleclassification places the proteins into two classes, that of integral proteins (these molecules are activefrom both inside the membrane as well as also in the region outside the membrane), and that of periph-eral proteins (macromolecules that are active only in one region of the cell [1]). The features of boththese types of proteins was addressed in [8]. features of both these types of proteins. [8] considers thecase where the main information to process is encoded in the multisets from the regions of a P system,but these objects evolve under the control of a bounded number of proteins placed on membranes.

Page 132: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

132 S.N. Krishna

Also, the rules used are quite restrictive: objects are moved across membranes, under the control ofmembrane proteins, changing or not the objects and/or the proteins during these operations.

In this paper, we look at the model as considered in [8] and investigate in detail, the power ofvarious combinations of operations and obtain several universality results. In all the results we haveobtained, the number of proteins used ranges between 7 and 10. We thus answer some open problemsmentioned in [8] and also obtain new universality results for combinations of operations not consideredearlier.

This paper is organized as follows: In the next section, we briefly recall the basic definition andrules of the system we consider here; in Section 3, we give the basics of register machines which havebeen used for proving universality; in Section 4, we give all the new results, and finally in Section 5,we point out some interesting problems and summarize the results. Due to length restriction, onlysome of the proofs are given with full details.

2 Types of Rules

In what follows we assume that the reader is familiar with membrane computing basic elements, [10],[12], as well as with basic elements of computability, so that we only mention here a few notationswe use. As usual, we represent multisets of objects from a given alphabet V by strings from V ∗,and the membrane structures by expressions of correctly matching labeled parentheses. The family ofrecursively enumerable sets of natural numbers is denoted by NRE.

We recall P systems with proteins on membranes [8]. In these systems two types of objects are used:(i) proteins and (ii) usual objects (floating objects). The proteins are placed on the membranes, thelatter are placed in the regions delimited by membranes. The fact that a protein p is on a membrane(with label) i is written in the form [ ip |. Both the regions of a membrane structure and the membranescan contain multisets of objects and of proteins, respectively. For instance, the expression

[1p21p2| a3bd [2p3| b5cd2 ]2]1,

indicates a membrane structure with two membranes, labeled 1 and 2, with the inner membrane 2containing the multiset of objects b5cd2 inside its region and the protein p3 on it, while in region 1 wehave the objects a3bd and the respective membrane is marked (to follow the terminology [5]) by themultiset of proteins p2

1p2.The following types of rules for handling the objects and the proteins are considered; in all of them,

a, b, c, d represent objects, p represents a protein, and i is a label (“res” stands for “restricted”):

Type Rule Effect1res [ ip|a → [ ip|b

a[ ip| → b[ ip| modify an object, but not move2res [ ip|a → a[ ip|

a[ ip| → [ ip|a move one object unmodified3res [ ip|a → b[ ip|

a[ ip| → [ ip|b modify and move one object4res a[ ip|b → b[ ip|a interchange two objects5res a[ ip|b → c[ ip|d interchange and modify two objects

In all cases above, the protein is not changed, it plays the role of a catalyst, just assisting theevolution of objects. A generalization is to allow rules of the forms below (now, “cp” means “changeprotein”), where p, p′ are two proteins (possibly equal; if p = p′, then the rules of type cp becomerules of type res):

Page 133: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Combining Brane Calculus and Membrane Computing 133

Type Rule Effect1cp [ ip|a → [ ip

′|b change the protein from p to p′,a[ ip| → b[ ip

′| modify an object, but not move2cp [ ip|a → a[ ip

′| change the protein from p to p′,a[ ip| → [ ip

′|a move one object unmodified3cp [ ip|a → b[ ip

′| change the protein from p to p′,a[ ip| → [ ip

′|b modify and move one object4cp a[ ip|b → b[ ip

′|a change the protein from p to p′,interchange two objects

5cp a[ ip|b → c[ ip′|d change the protein from p to p′,

interchange and modify two objects

An intermediate case can be that of changing proteins, but in a restricted manner, by allowing atmost two states for each protein, p, p′, and the rules either as in the first table (without changing theprotein), or changing from p to p′ and back (like in the case of bistable catalysts). Rules with suchflip-flop proteins are denoted by nff, n = 1, 2, 3, 4, 5 (note that in this case we allow both rules whichdo not change the protein and rules which switch from p to p′ and back).

Both in the case of rules of type ff and of type cp we can ask that the proteins are always movedin their complementary state (from p into p′ and vice versa). Such rules are said to be of pure ff orcp type, and we indicate the use of pure ff or cp rules by writing ffp and cpp, respectively.

We can use these rules in devices defined in the same way as the symport/antiport P systems(hence with the environment containing objects, in arbitrarily many copies each – we need such asupply of objects, because we cannot create objects in the system), where also the proteins presenton each membrane are mentioned.

That is, the systems we work with are of the form

Π = (O, P, µ, w1/z1, . . . , wm/zm, E, R1, . . . , Rm, io),

where m is the degree of the system (the number of membranes), O is the set of objects, P is the set ofproteins (with O∩P = ∅), µ is the membrane structure, w1, . . . , wm are the (strings representing the)multisets of objects present in the m regions of the membrane structure µ, z1, . . . , zm are the multisetsof proteins present on the m membranes of µ, E ⊆ O is the set of objects present in the environment(in an arbitrarily large number of copies each), R1, . . . , Rm are finite sets of rules associated with them membranes of µ, and io is the output membrane, an elementary membrane from µ.

The rules can be of the forms specified above, and they are used in the maximally parallel way:in each step, a maximal multiset of rules is used, that is, no other rule can be applied to the objectsand the proteins which remain unused by the chosen multiset. As usual, each object and each proteincan be involved in the application of only one rule, but the membranes are not considered as involvedin the rule applications, hence the same membrane can appear in any number of rules at the sametime. Only halting computations are considered successful, thus a non-halting computation will yieldno result. With a halting computation we associate a result, in the form of the multiplicity of objectspresent in region io in the halting configuration. We denote by N(Π) the set of numbers computedin this way by a given system Π, considering any halting computation. (A generalization would be todistinguish the objects and to consider vectors of natural numbers as the result of a computation, butwe do not examine this case here.)

The family of sets of numbers N(Π) generated by systems Π with at most m membranes, usingrules as specified in the list-of-types-of-rules, and with at most r proteins present on a membrane isdenoted by NOPm(pror; list − of − types − of − rules). When parameters m or r are not bounded,we use ∗ as a subscript. Note that while counting the number of flip-flop proteins, we do not countthe number of states they can be in. Thus, if we have n flip-flop proteins, we will write pron.

The universality results proved in [8] are given in Table 1. Row 1 implies that 3cpp and 2 mem-branes give NRE. Similarly, row 3 implies that the combination of rules (2res, 4cp) or (2res, 5cpp)or (2res, 5cp) or (2ff, 4cpp) or (2ff, 4cp) or (2ff, 5cpp) or (2ff, 5cp) or (2cp, 4cpp) or (2cp, 4cp) or(2cp, 5cpp) or (2cp, 5cp) or (3res, 4cpp) or (3ff, 4cpp) or (3res, 4cp) or (3ff, 4cp) or (3res, 5cpp) or(3ff, 5cpp) or (3res, 5cp) or (3ff, 5cp) give NRE.

Page 134: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

134 S.N. Krishna

Table 1. Universality results of [8]

Rule(s) Number of membranes Number of proteins

2cpp 1 2

3ffp 1 *

2res, 4cpp 1 2

2res, 1cpp 1 2

1res, 2ffp 1 *

3 Register Machines

In the proofs from the next sections we will use register machines as devices characterizing NRE,hence the Turing computability.

Informally speaking, a register machine consists of a specified number of registers (counters) whichcan hold any natural number, and which are handled according to a program consisting of labeledinstructions; the registers can be increased or decreased by 1 – the decreasing being possible only if aregister holds a number greater than or equal to 1 (we say that it is non-empty), and checked whetherthey are non-empty.

Formally, a (non-deterministic) register machine is a device M = (m,B, l0, lh, RP ), where m ≥ 1is the number of counters, B is the (finite) set of instruction labels, l0 is the initial label, lh is thehalting label, and RP is the finite set of instructions labeled (hence uniquely identified) by elementsfrom B (RP is also called the program of the machine). The labeled instructions are of the followingforms:

– li : (ADD(r), lj , lk), 1 ≤ r ≤ m (add 1 to register r and go non-deterministically to one of theinstructions with labels lj , lk),

– li : (SUB(r), lj , lk), 1 ≤ r ≤ m (if register r is not empty, then subtract 1 from it and go to theinstruction with label lj , otherwise go to the instruction with label lk),

– lh : HALT (the halt instruction, which can only have the label lh).

A register machine generates a natural number in the following manner: we start computingwith all m registers being empty, with the instruction labeled by l0; if the computation reaches theinstruction lh : HALT (we say that it halts), then the value of register 1 is the number generated bythe computation. The set of numbers computed by M in this way is denoted by N(M). It is known(see [7]) that non-deterministic register machines with three registers generate exactly the familyNRE, of Turing computable sets of numbers. Moreover, without loss of generality, we may assumethat in the halting configuration all registers except the first one, where the result of the computationis stored, are empty.

4 New Universality Results

In all theorems in this section, we consider register machines with 3 registers. Note that all proteinsp involved in rules of type iffp, i ∈ 1, 2, 3, 4, 5 can be in one of the two states: p or p′ at a point oftime. If in the current step, it is in state p, and is involved in a rule, then in the next step, it will bein state p′ and vice-versa.Note : In all the proofs given below, wherever we have flip-flop proteins p, we indicate in the proteinset P only p and do not separately write p′ also as another member of P , since it is understood thatp and p′ are just two states of the same protein, and do not represent two different proteins. Further,we assume that flip-flop proteins p are in state p in the initial configuration.

Theorem 1 NOP1(pro7; 3ffp) = NRE.

Page 135: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Combining Brane Calculus and Membrane Computing 135

Proof. Let us consider a register machine M = (3, B, l0, lh, RP ) having 3 registers r1, r2, r3. All regis-ters are empty to begin with, and the initial instruction is l0. If a halting configuration is reached, i.e,if instruction lh is reached, then the contents of register 1 is the output, and without loss of generality,we assume that registers 2 and 3 are empty.

Construct a P system Π = (O, P, [1]1, l0/P, E,R1, 1) with the following components

O = a1, a2, a3 ∪ Lj , L′j , lj , l

′j , l

′′j , l′′′j | 0 ≤ j ≤ h ∪ H, †,

P = p1, p2, p3, s1, s2, s3, p,E = a1, a2, a3.

The contents of the membrane during the initial configuration consists of the 7 proteins and the objectl0 representing the initial instruction. The proteins pi are used to simulate ADD instructions of registeri, and proteins si are used to simulate SUB instructions of register i. p is a protein which is used inboth simulations.

1. Simulating an ADD instruction li : (ADD(r), lj , lk), 1 ≤ r ≤ 3

Step Rules Type1 [1pr | li → l′i[1p

′r | 3ffp

2 ar[1p′r | → [1pr | ar and 3ffp

l′i[1p | → [1p′ | lj or l′i[1p | → [1p

′ | lk2 ar[1p

′r | → [1pr | ar and 3ffp

l′i[1p′ → [1p | lj or l′i[1p

′ | → [1p | lk

To simulate an add instruction li, we have the object li in membrane 1. The protein pr interactswith object li only if li is an instruction adding one to register r. Step 1 shows that the object liis transformed into l′i and is sent out, while the protein becomes p′r. It then gets a copy of objectar from the environment and goes back to its original state, pr. In parallel, the object l′i which issent out, is acted upon by the protein p (which may be in one of the states p, p′) and is broughtback into the membrane as a new instruction label lj or lk. Thus, at the end, we have an extraobject ar in the system, a new instruction lj or lk, and now we are ready for the next simulation.

2. Simulating a SUB instruction li : (SUB(r), lj , lk), 1 ≤ r ≤ 3

Step Rules Type1 [1sr | li → Li[1s

′r | 3ffp

2 [1s′r | ar → ar[1sr | and Li[1p | → [

1p′|L′i or 3ffp

[1s′r | ar → ar[1sr | and Li[1p

′ | → [1p|L′i3 [1p | L′i → L′′i [

1p′ | or [

1p′ | L′i → L′′i [1p | 3ffp

Register r is non-zero4 L′′i [1sr → [1s

′r | l′′j 3ffp

5 [1s′r | l′′j → l′′′j [1sr | 3ffp

6 l′′′j [1p | → [1p′ | lj or l′′′j [1p

′ | → [1p | lj 3ffp

4 L′′i [1sr → [1s′r | l′′j 3ffp

5 [1s′r | ar → ar[1sr | and [1p | l′′j → †[1p′ | or 3ffp

[1s′r | ar → ar[1sr | and [1p

′ | l′′j → †[1p |6 †[1p | → [1p

′ | † or †[1p′ | → [1p | † 3ffp7 [1p | † → †[1p′ | or [1p

′ | † → †[1p | 3ffp

Register r is zero4 L′′i [1s

′r | → [1sr | lk 3ffp

To simulate a SUB instruction, we start with step 1 wherein, the protein sr interacts with theobject li and sends it out of the membrane as Li. The protein sr enters the state s′r. In step 2, theprotein in state s′r detects if there is an ar and if yes, sends it out of the system, going back tostate sr. In parallel, the protein p (which may be in state p or p′) acts on the object Li, converts

Page 136: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

136 S.N. Krishna

it into L′i, and gets it back into the system. In the next step, it again acts on L′i and sends it outas L′′i . Now, we have different cases :Case 1: Register r is non-zeroIn this case, the protein sr would be in state sr after sending out a copy of ar. Now, step 4 isapplicable, and sr interacts with L′′i and gets it back in the system as l′′j , the subscript indicatingthat the new instruction to be simulated next is lj . The protein now is again in the state s′r. Nowthere are two possibilities: The first one is depicted by the first sub table having steps 4,5,6 andthe second, by the second subtable having rules 4,5,6,7.The first subtable simulates the scenario when s′r works on l′′j and converts it into l′′′j , which isthen converted into lj by p or p′, thereby correctly completing the simulation.The second subtable depicts the scenario when the protein in state s′r, instead of acting on l′′j ,wrongly acts on the object ar (present, if any) in the membrane. This is a wrong move sinceregister r has been decremented once already. To handle this wrong move, step 5 shows that theprotein p (or p′) acts on the object l′′j and converts into the trap symbol †. Once † comes into theenvironment, it can be never removed, and this induces an infinite computation.Thus, the first subtable depicts the correct scenario, and the second, how an infinite computationis induced, by a wrong move.Case 2: Register r is zeroIf this is the case, then we will have the protein in state s′r. The only possibility then, is to use therule as shown in the third subtable having only step 4. This converts the object L′′i into lk andgets it inside the membrane, while protein s′r goes back to state sr. Now, we are ready for anothersimulation.

3. Halting : The system should halt when the HALT instruction is encountered, that is, if lh isintroduced in membrane 1. Since the output is supposed to consist of objects of register 1 alone,we remove lh when it is introduced. Since there are no instructions to be simulated after lh, wecan add the rule [1p | lh → H[1p

′ | or [1p′ | lh → H[1p | , and the system halts. ut

We will now try to combine the operations 2ffp and 4ffp and compare them against 3ffp.Though in a general setting, we cannot say whether 3ffp and 2ffp, 4ffp are equivalent, it turns outthat if you have 7 proteins, then they are equivalent, viz., both systems characterize NRE.

Theorem 2 NOP1(pro7; 2ffp, 4ffp) = NRE.

Proof. As in the previous theorem, let us consider a register machine M = (3, B, l0, lh, RP ). Constructthe P system Π = (O, P, [1]1, l0/P, E,R1, 1) with the following components

O = E = Li, li, l′i, l′′i | 0 ≤ i ≤ h ∪ ai | 1 ≤ i ≤ 3 ∪ †,

P = pi, si, p | 1 ≤ i ≤ 3.

Initially, we have the object l0 representing the initial instruction and the seven proteins. The proteinspi are used for simulating ADD instructions of register i, and the proteins si, p, for simulating SUBinstructions of register i.

1. Simulation of an ADD instruction li : (ADD(r), lj , lk), 1 ≤ r ≤ 3

Step Rules Type1 lj [1pr | li → li [1p

′r | lj or lk[1pr | li → li [1p

′r | lk 4ffp

2 ar[1p′r | → [1pr | ar 2ffp

2. Simulation of a SUB instruction li : (SUB(r), lj , lk), 1 ≤ r ≤ 3

Page 137: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Combining Brane Calculus and Membrane Computing 137

Step Rules Type1 l′i[1sr | li → li[1s

′r | l′i 4ffp

2 [1s′r | ar → ar[1sr | and l′′i [1p | l′i → l′i[1p

′ | l′′i or 2ffp, 4ffp[1s

′r | ar → ar[1sr | and l′′i [

1p′ | l′i → l′i[1p | l′′i

Register r is non-zero3 Lj [1sr | l′′i → l′′i [1s

′r | Lj 4ffp

4 [1s′r | ar → ar[1sr | and †[1p | Lj → Lj [1p

′ | † or 2ffp, 4ffp[1s

′r | ar → ar[1sr | and †[1p′ | Lj → Lj [1p | †

5 †[1p | † → †[1p′ | † or †[1p′ | † → †[1p | † 4ffp

3 Lj [1sr | l′′i → l′′i [1s′r | Lj 4ffp

4 lj [1s′r | Lj → Lj [1sr | lj 4ffp

Register r is zero3 lk[1s

′r | l′′i → l′′i [1sr | lk 4ffp

The task of showing how these rules work is left to the reader.3. Halting : If the object lh representing the halting instruction enters the membrane, then we can

halt. Of course, the output should just consist of objects a1 (if any present). This can be done byremoving the object lh out of membrane 1 by using the rule [1p | lh → lh[1p

′ | or [1p′ | lh → lh[1p | .ut

Corollary 3 NOP1(pro7; 2ffp, 5ffp) = NRE.

Next, we examine the power of the most basic operation 1res coupled with 2ffp and prove that 10proteins suffice to give completeness. This was one of the open problems mentioned in [8].

Theorem 4 NOP1(pro10; 1res, 2ffp) = NRE.

Proof. As before, let us consider a register machine M = (3, B, l0, lh, RP ). Construct the P systemΠ = (O, P, [1]1, l0, z/P, E,R1, 1) where

O = E ∪ z, o, o1, o2, o3 ∪ li,j , li,k, l′i,j , l′i,k | li = (ADD(r), lj , lk),

P = pi, si | 1 ≤ i ≤ 3 ∪ p, q, s, t,E = a1, a2, a3.

The proteins p, t are involved in rules of type 1res while pi, si, q, s are involved in rules of type 2ffp.Initially, we have two objects, l0 and z in the membrane. The proteins pi, p, q are used in simulationof ADD instructions of register i, and proteins si, s, p, t, q in simulation of SUB instructions of registeri.

The rules are as follows:

1. Simulation of an ADD instruction li : (ADD(r), lj , lk)To simulate an ADD instruction li, first the object li is converted into li,j or li,k by p. In the nextstep, this object is taken out of the membrane by protein pr. Protein pr becomes p′r after this. Inthe next step, p′r interacts with an object ar from the environment and gets it in. In parallel, theobject li,j (li,k) sent out is acted upon by protein p and is converted to l′i,j (l′i,k). All that nowneeds to be done is to get the instruction corresponding to lj or lk in, which is done by protein q.q (or q′) gets the object l′i,j (li,k) in, which is converted to lj (lk) by protein p.

Step Rules Type1 [1p | li → [1p | li,j or [1p | li → [1p | li,k 1res2 [1pr | li,j → li,j [1p

′r | or [1pr | li,k → li,k[1p

′r | 2ffp

3 li,j [1p | → l′i,j [1p | and ar[1p′r | → [1pr | ar or 1res, 2ffp

li,k[1p | → l′i,k[1p | and ar[1p′r | → [1pr | ar

4 l′i,j [1q | → [1q′ | l′i,j or l′i,j [1q

′ | → [1q | l′i,j or 2ffpl′i,k[1q | → [1q

′ | l′i,k or l′i,k[1q′ | → [1q | l′i,k

5 [1p | l′i,j → [1p | lj or [1p | l′i,k → [1p | lk 1res

Page 138: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

138 S.N. Krishna

2. Simulation of a SUB instruction li : (SUB(r), lj , lk), 1 ≤ r ≤ 3We start with li in the membrane. li is taken out by the protein s and the object z is also takenout by the protein q. Both s, q enter into states s′, q′ after this. The object z which is sent out isconverted into o by the protein t. In parallel, protein p acts on li and converts it into l′i. In step3, l′i is taken into the membrane by protein q (or q′). In parallel, object o enters the membraneby the action of protein s′. This is followed in the next step, by the action of p on l′i, convertingit into l′′i , while in parallel, o is converted into o1 by protein t.

Step Rules Type1 [1s | li → li[1s

′ | and [1q | z → z[1q′ | 2ffp

2 z[1t | → o[1t | and li[1p | → l′i[1p | 1res3 l′i[1q | → [1q

′ | l′i and o[1s′ | → [1s | o or 2ffp

l′i[1q′ | → [1q | l′i and o[1s

′ | → [1s | o4 [1p | l′i → [1p | l′′i and [1t | o → [1t | o1 1res5 [1sr | l′′i → l′′i [1s

′r | and [1t | o1 → t | o2 2ffp, 1res

6 l′′i [1p | → l′′′i [1p | and [1s′r | ar → ar[1sr | and 1res, 2ffp,

[1q | o2 → o2[1q′ | or [1q

′ | o2 → o2[1q | 2ffp

Register r is zero7 l′′′i [1s

′r | → [1sr | l′′′i and o2[1p | → o3[1p | 2ffp, 1res

8 [1p | l′′′i → [1p | lk and o3[1t | → o[1t | 1res

Register r is non-zero7 o2[1p | → o3[1p | 1res8 l′′′i [1p | → l′′′′i [1p | and o3[1t | → o[1t | 1res9 l′′′′i [1q | → [1q

′ | l′′′′i or l′′′′i [1q′ | → [1q | l′′′′i 2ffp

10 [1p | l′′′′i → [1p | lj 1res

Infinite Computation7 l′′′i [1p | → l′′′′i [1p | and o2[1t | → †[1t | 1res8 †[1p | → †[1p | 1res

Now, protein sr acts on l′′i , sending it out. In parallel, o1 is converted into o2 by t. In the nextstep, l′′i in the environment is converted to l′′′i by p, while in parallel, o2 is moved out by q (or q′),and, s′r removes an ar (if any present) from the membrane. Thus, at the end of this step, we willhave (i) o2, l

′′′i in the environment and (ii) protein sr (if there exists an ar) or s′r (if there is no

ar) in the membrane.Case 1: Register r is zeroWe shall first look at the case when we have s′r in the membrane at the end of step 6. This isdepicted in the first sub table. Clearly, the object l′′′i is outside, and hence, we can use step 7, bywhich l′′′i enters the membrane, and protein sr enters its initial state sr. In parallel, the object o2

is converted into o3 by p. Once l′′′i is inside, it is replaced by lk using protein p, and object o3 byo using protein t. This ends the simulation correctly since we have the next instruction lk inside,and object o is waiting outside to be used for the next SUB simulation.

However, note that the object l′′′i can be acted upon by two proteins viz., s′r and p. If p acts onl′′′i instead of s′r, then we get an infinite computation, as shown in the last sub table. Thus, p actson o2 first, when o2 and l′′′i are present at the same time, to get a correct computation.Case 2: Register r is non-zeroNow lets look a the case when we had an ar, and hence had protein sr at the end of step 6. Thesecond sub table depicts this case. At step 7, we replace o2 by o3 using protein p, and in step 8,replace l′′′i by l′′′′i , again using protein p. In parallel, o3 is replaced by o using t. In the next step,object l′′′′i is brought inside the membrane by protein q (or q′) and finally, l′′′′i is replaced by ljusing protein p, thereby correctly completing the simulation.Note that here also, if p acts on l′′′i (even though s′r is not present) before acting on o2, an infinitecomputation is obtained.

Page 139: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Combining Brane Calculus and Membrane Computing 139

3. Halting : When the instruction lh is obtained in the system, then no more instructions needto be simulated. Thus, we can just remove lh from the system. This can be done as follows:[1q | lh → lh[1q

′ | or [1q′ | lh → lh[1q | . Note that for lh, none of the earlier rules are applicable,

since lh does not correspond to any ADD or SUB instruction. ut

Corollary 5 NOP1(pro10; 1ffp, 2ffp), NOP1(pro10; 1ff, 2ffp), NOP1(pro10; 1cpp, 2ffp) = NRE.Also, NOP1(pro10; 1cp, 2ffp) = NRE.

If we use 1ffp instead of 1res, in the above theorem, we show that we can do better (in terms of thenumber of proteins). In the next result, we show that with one membrane and 7 proteins, (1ffp, 2ffp)gives NRE. This makes an interesting observation : With 7 proteins, 3ffp, (1ffp, 2ffp), (2ffp, 4ffp),and (2ffp, 5ffp) all give NRE.

The next two theorems are given without proofs.

Theorem 6 NOP1(pro7; 1ffp, 2ffp) = NRE.

Next, we observe the power of the weaker operation 2res instead of 2ffp, in conjunction with1ffp.

Theorem 7 NOP1(pro9; 1ffp, 2res) = NRE.

Corollary 8 NOP1(pro9; 1ffp, 3res) = NRE.

We prove next that 2ffp and 3res also give universality.

Theorem 9 NOP1(pro9; 2ffp, 3res) = NRE.

Proof. Consider the register machine M = (3, B, l0, lh, RP ) and let us construct the system Π =(O, P, [1]1, l0, z/P, E,R1, 1) where

O = a1, a2, a3 ∪ li, l′i, l′′i , l′′′i , Li | 0 ≤ i ≤ h ∪ h, o, z, † ∪ oi | 1 ≤ i ≤ 4,E = a1, a2, a3,P = pi, si | 1 ≤ i ≤ 3 ∪ p, q, s.

Proteins p, s are involved in rules of type 3res, while the rest are involved in rules of type 2ffp. Inthe initial configuration, we have the objects l0 and z in the membrane. Proteins p, pi assist in thesimulation of an ADD instruction whereas proteins p, q, s, si assist in simulation of a SUB instruction.

1. Simulation of an ADD instruction li : (ADD(r), lj , lk), 1 ≤ r ≤ 3

Step Rules Type1 [1pr | li → li[1p

′r | 2ffp

2 ar[1p′r | → [1pr | ar and li[1p | → [1p | lj or 2ffp, 3res

ar[1p′r | → [1pr | ar and li[1p | → [1p | lk 2ffp, 3res

We start with li in the membrane. The protein pr acts on li and moves it out of the membrane,entering state p′r in the process. In the next step, p′r acts on an object ar, and gets it inside, while,in parallel, the object li is acted upon by protein p and is converted into lj or lk and is broughtback into the system.

2. Simulation of a SUB instruction li : (SUB(r), lj , lk), 1 ≤ r ≤ 3Initially, we start processing the object li using protein s; in parallel, the object z gets replacedby o (using protein p) and moves out. Note that the replacement of z by o can happen at anytimewhenever p is free. In the next step, l′i which is sent out of the membrane is brought back by q.q enters into state q′. In the next step, o is brought inside the membrane, and in parallel, l′i isreplaced with l′′i by p and is sent out. Note that o can be processed only when we have q′ andthis can happen only during simulation of a SUB instruction. q′ again enters back into state q andremains idle until the next SUB instruction.

Page 140: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

140 S.N. Krishna

In the next step, protein sr acts on l′′i and brings it inside, entering into state s′r in the process.The object o is replaced with o1 by p and is sent out. Further, l′′i is acted upon by s, replacingit with l′′′i and sending it out, while in parallel, o1 enters the membrane as o2 using p, and s′rdetects the presence of an object ar and sends it out of the system. Thus, at the end of this step,we have object o2 in the membrane, object l′′′i outside, and protein sr if register r was non-zero.Otherwise, we have protein s′r.

Step Rules Type1 [1s | li → l′i[1s | and [1p | z → o[1p | 3res2 l′i[1q | → [1q

′ | l′i 2ffp3 o[1q

′ | → [1q | o and [1p | l′i → l′′i [1p | 2ffp, 3res4 l′′i [1sr | → [1s

′r | l′′i and [1p | o → o1[1p | 2ffp, 3res

5 [1s | l′′i → l′′′i [1s | and o1[1p | → [1p | o2 and 3res, 2ffp[1s

′r | ar → ar[1sr |

Register r is zero6 l′′′i [

1s′r | → [

1sr | l′′′i and [

1p | o2 → o3[1p | 2ffp, 3res

7 [1s | l′′′i → Lk[1s | and o3[1p | → [1p | o4 3res

8 Lk[1p | → [

1p | lk and [

1s | o4 → o[

1s | 3res

Register r is non-zero6 [1p | o2 → o3[1p | 3res7 o3[1p | → [1p | o4 3res8 l′′′i [1p | → [1p | lj and [1s | o4 → o[1s | 3res

6 [1p | o2 → o3[1p | 3res7 l′′′i [1p | → [1p | lj 3res8 o3[1p | → [1p | o4 3res9 [1s | o4 → o[1s | 3res

Infinite Computation6 l′′′i [1p | → [1p | lj and [1s | o2 → †[1s | 2ffp, 3res7 †[1p | → [1p | † 3res8 †[1p | → [1p | † 3res

Case 1: Register r is zeroIn this case, we can use the first subtable, wherein s′r acts on l′′′i and brings it in. In parallel, o2

is sent out as o3 by p. In the next step, the object l′′′i inside is replaced as Lk and o3 becomes o4.Finally, Lk is brought back as lk, the next instruction to be simulated, and o4 is replaced with o.We are thus ready for the next simulation.However, note that we also have an option of protein p acting on l′′′i , instead of s′r, which leads toan infinite computation since protein s acts on o2, replacing it with †. Thus, in other words, animplicit priority that p acts on o2 and then only on l′′′i is enforced.Case2 : Register r is non-zeroIn this case, we do not have s′r in step 6. Subtables 2 and 3 depict this case. Due to the implicitpriority, p acts on o2 first. Since l′′′i remains unchanged, p can act on it later. Now, p also has arule involving o3, thus, p can act on l′′′i followed by o3 or vice-versa as shown in subtables 2,3. Inboth cases, we get the correct result, by obtaining lj , the next instruction to be simulated and theobject o is reinstated for the next SUB simulation.

3. Halting : When we obtain lh inside the membrane, we know that no more instructions remain tobe simulated. Thus, we can modify lh and take it out using the rule [1p | lh → h[1p | . ut

We saw in corollary 8 that 1ffp and 3res give universality with 9 proteins. This was inferred usingthe universality result of 1ffp with 2res using 9 proteins. We now directly examine the power of 1ffpalong with 3res, and find that 8 proteins suffice.

Theorem 10 NOP1(pro8; 1ffp, 3res) = NRE.

Page 141: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Combining Brane Calculus and Membrane Computing 141

Proof. Consider the register machine M = (3, B, l0, lh, RP ) and let us construct the system Π =(O, P, [1]1, l0/P, E,R1, 1) where

O = ai | 1 ≤ i ≤ 3 ∪ o, o′, o′′, h, † ∪ li, l′i, l′′i , l1i , l2i , l

3i , l

4i , l

5i | 0 ≤ i ≤ h,

E = a1, a2, a3, o,P = pi, si | 1 ≤ i ≤ 3 ∪ p, s.

Protein p is involved only in rules of type 3res while all others are involved in rules of type 1ffp.Proteins p, pi assist in simulation of ADD instructions while proteins p, s, si assist in SUB simulations.In the initial configuration, we have the object l0 in the membrane, and the environment containslarge numbers of ai, o.

1. Simulation of an ADD instruction li : (ADD(r), lj , lk), 1 ≤ r ≤ 3.To simulate an ADD instruction, we start with pr acting on li, and replacing it with l′i. pr entersinto state p′r. In the next step, p′r acts on a copy of the object ar in the environment and replacesit with a′r. In parallel, the protein p acts on l′i and moves it out as l′′j or l′′k .

Step Rules Type1 [1pr | li → [1p

′r | l′i 1ffp

2 ar[1p′r | → a′r[1pr | and [1p | l′i → l′′j [1p | or 1ffp, 3res

ar[1p′r | → a′r[1pr | and [1p | l′i → l′′k [1p |

3 a′r[1p | → [1p | ar 1ffp, 3res4 l′′m[1p | → [1p | lm, m = j, k 3res

Now, in the next step, p can either act on a′r which is in the environment and get it inside as ar,or act on l′′j (or l′′k) in the environment and get it back as lk. Thus, steps 3 and 4 as written inthe table may be interchanged without loss of generality. Note that this does not affect any futuresimulations of ADD or SUB instructions.

2. Simulation of a SUB instruction li : (SUB(r), lj , lk), 1 ≤ r ≤ 3.

Step Rules Type1 [1p | li → l1i [1p | 3res2 l1i [1s | → l2i [1s

′ | 1ffp3 l2i [1sr | → l3i [1s

′r | and o[1s

′ | → o′[1s | 1ffp4 [1s

′r | ar → [1sr | a′r and l3i [1p | → [1p | l4i and 1ffp, 3res

o′[1s → o′′[

1s′

Register r is non-zero5 [

1p | a′r → a[

1p | and o′′[

1s′ → o[

1s | 1ffp, 3res

6 [1s | l4i → [1s′ | l5j 1ffp

7 [1s′ | l5j → [1s | lj , 1 ≤ j ≤ h 1ffp

Register r is zero5 [1s

′r | l4i → [1sr | lk and o′′[1s

′ → o[1s | 1ffp

Infinite Computationo′′[1p → [1p | † and [1p | l5j → †[1p | 3res

†[1p | → [1p | †, [1p | † → †[1p | 3res

The instruction label li is processed by protein p and is sent out as l1i . This is then acted upon byprotein s, changing it into l2i . s enters into state s′ in the process. In the next step, the proteinsr acts on l2i , replaces it with l3i , and enters state s′r. In parallel, the protein s′ acts on the objecto in the environment, and replaces it with o′. In the next step, l3i is acted upon by p, changingit into l4i , and getting it inside, while in parallel, o′ is replaced by o′′ by s, and s′r replaces an ar

(if any present, in the membrane) by a′r. At the end of this step, we have the object o′′ in theenvironment, the object l4i in the membrane, protein s′, and protein sr (if there was an ar) orprotein s′r. In the next step, we have rules applicable to objects l4i , o

′′ and o. Note that there areinfinitely many copies of o in the environment and s′ can act on them.

Page 142: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

142 S.N. Krishna

Case 1 : Register r is zeroIn this case, we have s′r and hence it can act on l4i , changing it into lk. However, we have twochoices for protein s′. It can either act on the single object o′′ or on one of the many copies of o.However, if s′ acts on o, then we get an infinite computation since p will act on o′′ and introducethe trap symbol †. Thus, implicitly, a priority is enforced on s′ that it acts on o′′ whenever it ispresent. s′ replaces o′′ by o and enters state s and we have completed the simulation correctly.Case 2: Register r is non-zeroWe will have protein sr in this case. Hence, in step 5, o′′ is replaced using using s′, giving o. Inthe next step, we have the protein s and this acts on l4i , giving l5j . In the next step, s′ acts on l5j ,replacing it with lj , the next instruction to be simulated.Note here also that if s′ fails to act on l5j in step 7 or on o′′ in step 5, an infinite computation willbe induced by protein p replacing it with †.

3. Halting : When we obtain the object lh, then we remove it from the membrane. This is done bythe rule [1p | lh → h[1p | . ut

We shall now look at the power of 3res in conjunction with 4ffp. The next theorems are againgiven without proofs.

Theorem 11 NOP1(pro9; 3res, 4ffp) = NRE.

Corollary 12 NOP1(pro9; 3res, 4ff) = NOP1(pro9; 3res, 4cpp) = NRE, NOP1(pro9; 3res, 4cp) =NRE, NOP1(pro9; 3res, 5ffp) = NRE, NOP1(pro9; 3res, 5ff) = NRE, NOP1(pro9; 3res, 5cpp) =NRE, NOP1(pro9; 3res, 5cp) = NRE.

In Corollary 3, we observed that with 7 proteins, and operations 2ffp, 5ffp, we obtain RE. We nowuse the weaker operation 5res along with 2ffp and examine the power.

Theorem 13 NOP1(pro8; 2ffp, 5res) = NRE.

5 Conclusion

In this paper, we have investigated the power of a few operations, all using bounded number ofproteins. We show that with 3ffp, universality can be obtained with 7 proteins. Further, we examinethe power of 2ffp coupled with a variety of operations, viz., 1ffp, 1res, 4ffp, 3res and 5res. In eachcase, we obtain universality with at most 10 proteins. We look at the power of 1ffp coupled with 2resand 3res and also finally at the combination of 4ffp and 3res. Table 2 summarizes the universalityresults obtained in this paper.

Table 2. New Universality results

Rule(s) Number of membranes Number of proteins

3ffp 1 7

2ffp, 4ffp 1 7

2ffp, 1ffp 1 7

2ffp, 1res 1 10

2ffp, 3res 1 9

2ffp, 5res 1 8

1ffp, 2res 1 9

1ffp, 3res 1 8

4ffp, 3res 1 9

It is an interesting problem to look at those operations (or combinations of operations) which arestrictly below RE. Some of the combinations are intuitively not RE; an example is the combination of

Page 143: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Combining Brane Calculus and Membrane Computing 143

(4res, 5res), since the number of objects is never increased. Similar is the case of (1cp, 4cp), (1cp, 5cp),where an object can be modified, but no new extra object can enter or exit a membrane. Thus,there remain interesting options to check for non-universality : (i) single operations like 2cp or (ii)combinations operations like (2ffp, 2res), (4ffp, 2res) and so on.

Further, the optimality (in terms of the number of proteins) for the above obtained results isunknown, and remains another open problem.

References

1. B. Alberts, A. Johnson, J. Lewis, M. Raff, K. Roberts, P. Walter: Molecular Biology of the Cell, 4th ed.Garland Science, New York, 2002.

2. N. Busi: On the computational power of the Mate/Bud/Drip brane calculus: Interleaving vs maximalparallelism. Proceedings of WMC6, LNCS 3850, Springer, 2006, 144–158.

3. L. Cardelli: Brane calculi. Interactions of biological membranes. Proceedings of Computational Methods inSystems Biology, 2004 (V. Danos, V. Schachter, eds.), LNCS 3082, Springer-Verlag, Berlin, 2005, 257–278.

4. L. Cardelli, Gh. Paun: An universality result based on Mate/Drip operations. International Journal ofFoundations of Computer Science, 17, 1 (2006), 49–68.

5. M. Cavaliere, A. Riscos-Nunez, R. Brijder, G. Rozenberg: Membrane systems with marked membranes.Manuscript, 2005.

6. S.N. Krishna, Universality results for P systems based on brane calculi operations. Theoretical ComputerScience, to appear.

7. M.L. Minsky: Computation: Finite and Infinite Machines. Prentice Hall, Englewood Cliffs, New Jersey,1967.

8. A. Paun, B. Popa: P systems with proteins on membranes. Fundamenta Informaticae, 72, 4 (2006), 467–483.

9. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61, 1 (2000), 108–143.10. Gh. Paun: Membrane Computing – An Introduction. Springer-Verlag, Berlin, 2002.11. G. Rozenberg, A. Salomaa, eds.: Handbook of Formal Languages. Springer-Verlag, Berlin, 1987.12. The P Systems Webpage: http://psystems.disco.unimib.it.

Page 144: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Solving the Factorization Problemwith P Systems

Alberto Leporati, Claudio Zandron, Giancarlo Mauri ?

Dipartimento di Informatica, Sistemistica e ComunicazioneUniversita degli Studi di Milano – Bicocca

Via Bicocca degli Arcimboldi 8, 20126 Milano, Italy

leporati,zandron,[email protected]

Abstract. P systems have been used many times to face with computationally difficult prob-lems, such as NP–complete decision problems and NP–hard optimization problems. In this paperwe focus our attention on another computationally intractable problem: Factorization. In par-ticular, we first propose a simple method to encode binary numbers using multisets. Then, wedescribe three families of P systems: the first two allow to add and to multiply two binaryencoded numbers, respectively, while the third solves the Factorization problem.

1 Introduction

Membrane systems (also known as P systems) has been introduced in [11] as a new class of distributedand parallel computing devices, inspired by the structure and functioning of living cells. The basicmodel consists of a hierarchical structure composed by several membranes, embedded into a mainmembrane called the skin. Membranes divide the Euclidean space into regions, that contain someobjects (represented by symbols of an alphabet) and evolution rules. Using these rules, the objects mayevolve and/or move from a region to a neighboring one. The rules are applied in a non-deterministicand maximally parallel way: all the objects that may evolve are forced to evolve. A computation startsfrom an initial configuration of the system and terminates when no evolution rule can be applied. Theresult of a computation is the multiset of objects contained into an output membrane, or emitted tothe environment from the skin of the system.

In what follows we assume the reader is already familiar with the basic notions and the terminologyunderlying P systems. For a layman–oriented introduction, see [15], whereas a formal description isgiven in [14]. The latest information about P systems can be found in [25].

In the last few years, a large number of P systems have been proposed that solve computationallydifficult problems in polynomial time. Some of them deal with non-numerical NP–complete decisionproblems, such as SAT [13, 20, 2, 9, 24]. Others deal with numerical NP–complete problems, that is,decision problems whose instances consist of sets or sequences of integer numbers, such as SubsetSum [18], Knapsack [17], Bin Packing [19], and Partition [4]. Also, some membrane algorithmsinspired by P systems have been proposed that solve NP–hard optimization problems, such as TSP[10] and Min Storage [6]. However, there exist problems which are neither decision nor optimizationproblems, but are nevertheless very interesting. A notable example is Factorization, which can bedefined as follows.

Problem 1. Name: Factorization.

– Instance: a positive integer number n which is the product of two prime numbers p and q– Output: p

This problem is generally considered intractable, which means that no polynomial time (with respectto the instance size) algorithm is known that solves it on every instance. The natural instance size

? This work has been partially supported by the Italian Ministry of University (MIUR) under the projectPRIN-04 “Systems Biology: modellazione, linguaggi e analisi (SYBILLA)”, and by the European ResearchTraining Network Segravis.

Page 145: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Solving the Factorization Problem with P Systems 145

for the problem is k = blog2 nc + 1 = Θ(log2 n), that is, the number of bits which are needed torepresent the number n in binary form. By the way, let us note that the trivial algorithm that tries todivide n by every number comprised between 1 and

√n requires an exponential time with respect to

the instance size. The conjectured intractability of this problem is often exploited in Cryptography: afamous example is the RSA cryptosystem [22].

In [7] we have proposed a general framework which can be applied to solve many NP–completeproblems. Such framework, like many solutions of intractable problems proposed in the literature,uses membrane division to produce an exponential number of membranes in polynomial time. Eachmembrane contains a candidate solution, which is tested to see whether it solves the problem; thesystems that contain a solution emit a specified symbol, which is interpreted as the answer to theproblem. In this paper we apply some ideas underlying the above framework, and we propose a familyΠFact(k)k∈IN of P systems which solves the Factorization problem, where ΠFact(k) solves all theinstances in which the number n to be decomposed is a k–bit integer number. Thus, we first proposea simple method to represent non–negative integer numbers in binary notation using multisets ofobjects. Then, we present two simple P systems that compute the sum and the product of two k–bit numbers, respectively. Finally we show how to generate in polynomial time, using (elementary)membrane division, all possible pairs of k–bit numbers. Given a non–negative integer number n to bedecomposed, we generate in this way all possible candidate decompositions (A,B). Each subsystemcontains one of those candidates, and the rules to multiply them and test whether the result is equalto n. In case a match is found, the number A is expelled into the environment.

Let us note that the only other currently known polynomial time algorithm that solves the Fac-torization problem requires a quantum computer to be executed [23]. This is an indication of howpowerful P systems with membrane division can be.

The paper is organized as follows. In Section 2 we introduce our encoding of binary numbers usingmultisets, and we describe two families of simple P systems which can be used to add and multiplytwo k–bit integer numbers, respectively. In Section 3 we propose a family ΠFact(k)k∈IN of P systemswhich solves the Factorization problem. Conclusions are given in section 4.

2 Adding and Multiplying two k–bit Integer Numbers

First of all let us show how a given non–negative integer number x can be represented in binarynotation using a multiset. Let xk−1, . . . , x1, x0 (with k ≥ 1) be the binary representation of x ≥ 0, sothat x =

∑k−1i=0 xi2i. We use the objects from the following alphabet Ak, for k ≥ 1:

Ak = 〈b, j〉 | b ∈ 0, 1, j ∈ 0, 1, . . . , k − 1. (1)

Object 〈b, j〉 is used to represent bit b into position j in the binary encoding of an integer number.Hence, to represent the above number x we will use the following multiset (actually, a set) of objects:

〈xk−1, k − 1〉, . . . , 〈x1, 1〉, 〈x0, 0〉.

Let us remark that the alphabet Ak depends on the length of the binary representation of the numberx. Moreover, it is clear that with Ak we can represent all integer numbers in the range 0, 1, . . . , 2k−1.

Now, let ak−1, . . . , a1, a0 and bk−1, . . . , b1, b0 be the binary representations of the k–bit integernumbers A =

∑k−1i=0 ai2i and B =

∑k−1i=0 bi2i, respectively. The sum A + B can thus be expressed as

A+B =∑k−1

i=0 (ai + bi)2i, and we can define a family ΠAdd(k)k∈IN of P systems which performs theaddition as follows. For the moment, let us assume that we do not need to differentiate the objects ofthe two input numbers A and B, and of the output number C. The system ΠAdd(k), which performsthe addition of two k–bit integer numbers, is formally defined as:

ΠAdd(k) = (Ak, µ, w,R(k), iin, iout),

where:

– Ak is the above (see equation (1)) alphabet of objects;

Page 146: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

146 A. Leporati, C. Zandron, G. Mauri

– µ = [ ]skin is the membrane structure consisting of the skin only;– w is the multiset of objects initially present in the region enclosed by the skin. Such objects

represent (in binary form, as described above) the k–bit numbers A and B which have to beadded;

– R(k) is the following set of evolution rules associated with the skin region: for all i ∈ 0, 1, . . . , k−1,

〈0, i〉〈0, i〉 → 〈0, i〉〈0, i〉〈1, i〉 → 〈1, i〉〈1, i〉〈1, i〉 → 〈0, i〉〈1, i + 1〉

– iin = skin specifies the input membrane of ΠAdd(k);– iout = skin specifies the output membrane of ΠAdd(k).

The semantics of the rules is the usual for evolution rules: they are all applied in a maximallyparallel way. The computation halts when no more rules can be applied. When this happens, themultiset which occurs in the output membrane (in this case, the skin) is the output of the computation.

Computations are performed as follows. The objects which denote the bits of the binary represen-tation of A and B are initially put into the region enclosed by the skin. Then the computation starts,and the rules from R(k) are applied. It is easily seen that these rules mimic the usual addition algo-rithm that considers the bits of A and B occurring in the same positions, and for each of these pairsproduces the corresponding result and (eventually) a carry bit. Hence at the end of the computation,when no more rules from R(k) can be applied, the skin will contain the multiset which correspondsto the binary representation of C = A + B. The number of cellular steps of the P system, as well asthe cardinality of its alphabet, are clearly polynomially bounded with respect to k.

Now, let us describe a family ΠProd(k)k∈IN of P systems such that ΠProd(k) computes the productof two to k–bit integer numbers A =

∑k−1i=0 ai2i and B =

∑k−1i=0 bi2i. Such product can be expressed

as A · B =∑k−1

i=0

∑k−1j=0 aibj2i+j . Hence we will first compute the contribution of each pair of bits ai

and bj , and then we will sum all these contributions. However, in order to realize this strategy weneed to distinguish between the objects that represent the bits of A and B, and those that representthe bits of the result C. To this aim, we mark each element in the input multiset with a leading labelA,B or C, thus obtaining the following modified alphabet A′k:

A′k = 〈`, b, j〉 | ` ∈ A,B, b ∈ 0, 1, j ∈ 0, 1, . . . , k − 1 ∪〈C, b, j〉 | b ∈ 0, 1, j ∈ 0, 1, . . . , k.

In this way, the i-th bit of A (that is, ai) and the j-th bit of B (that is, bj) are represented by theobjects 〈A, ai, i〉 and 〈B, bj , j〉, respectively. By adopting this alphabet, also the rules R(k) to performthe addition A + B have to be modified as follows: for all i ∈ 0, 1, . . . , k − 1,

〈A, 0, i〉〈B, 0, i〉 → 〈C, 0, i〉,〈A, 0, i〉〈B, 1, i〉 → 〈C, 1, i〉,〈A, 1, i〉〈B, 0, i〉 → 〈C, 1, i〉,〈A, 1, i〉〈B, 1, i〉 → 〈C, 0, i〉〈C, 1, i + 1〉,〈C, 0, i〉〈C, 0, i〉 → 〈C, 0, i〉,〈C, 0, i〉〈C, 1, i〉 → 〈C, 1, i〉,〈C, 1, i〉〈C, 1, i〉 → 〈C, 0, i〉〈C, 1, i + 1〉.

Also in this case the rules are applied in a maximally parallel way, and the computation halts when norule can be applied. In particular, the first step of the computation produces some bits of the result Cas well as the carry bits; the subsequent steps involve only the objects 〈C, b, j〉, and compute the finalresult by adding all carry bits. In all cases, the computation halts after a polynomial (with respect tok) number of steps.

Page 147: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Solving the Factorization Problem with P Systems 147

We can now formally define the P system ΠProd(k) that computes the product of any two k–bitnumbers A and B:

ΠProd(k) = (A′′k , µ, w,R(k), iin, iout),

where:

– A′′k is the following alphabet of objects:

A′′k = 〈`, b, j〉 | ` ∈ A,B, b ∈ 0, 1, j ∈ 0, 1, . . . , k − 1 ∪〈C, b, j〉 | b ∈ 0, 1, j ∈ 0, 1, . . . , 2k − 1 ∪〈i, j〉 | i, j ∈ 0, 1, . . . , k − 1;

– µ = [ ]skin is the membrane structure consisting of the skin only;– w is the multiset of objects initially present in the region enclosed by the skin. Such objects

represent the k–bit numbers A and B which have to be multiplied; moreover, for all i, j ∈0, 1, . . . , k − 1, w contains exactly one copy of the object 〈i, j〉;

– R(k) is the following set of evolution rules associated with the skin region: for all i, j ∈ 0, 1, . . . , k−1, and for all l ∈ 0, 1, . . . , 2k − 1,

〈A, 0, i〉〈B, 0, j〉〈i, j〉 → 〈C, 0, i + j〉〈A, 0, i〉〈B, 0, j〉,〈A, 0, i〉〈B, 1, j〉〈i, j〉 → 〈C, 0, i + j〉〈A, 0, i〉〈B, 1, j〉,〈A, 1, i〉〈B, 0, j〉〈i, j〉 → 〈C, 0, i + j〉〈A, 1, i〉〈B, 0, j〉,〈A, 1, i〉〈B, 1, j〉〈i, j〉 → 〈C, 1, i + j〉〈A, 1, i〉〈B, 1, j〉,〈C, 0, l〉〈C, 0, l〉 → 〈C, 0, l〉,〈C, 0, l〉〈C, 1, l〉 → 〈C, 1, l〉,〈C, 1, l〉〈C, 1, l〉 → 〈C, 0, l〉〈C, 1, l + 1〉;

– iin = skin specifies the input membrane of ΠProd(k);– iout = skin specifies the output membrane of ΠProd(k).

As told above, the first four rules of R(k) compute all the contributions aibj2i+j given by thesingle bits of A and B to the product C = A · B =

∑k−1i=0

∑k−1j=0 aibj2i+j . The objects that represent

such bits, namely 〈A, ai, i〉 and 〈B, bj , j〉, are regenerated each time these rules are applied, so thatthey can be reused for different combinations of i and j. The possibility to reuse the objects for thesame combination of i and j is excluded by the fact the objects 〈i, j〉, for all i, j ∈ 0, 1, . . . , k − 1,initially present in the input multiset w, are consumed when the rules are applied. In other words,the presence of a given object 〈i, j〉 denotes the fact that the contribution given by the bits ai and bj

has not been taken into account yet. The remaining rules of R(k) sum all the contributions, that is,all the bits of C produced in the previous steps of computation. Note the similarity with the rules ofthe first P system that computes the addition of A and B proposed above.

3 Solving the Factorization Problem

In this section, starting from the framework proposed in [7] to solve NP–complete problems by mem-brane division, we design a family ΠFact(k)k∈IN of P systems which solves the Factorizationproblem. The P system ΠFact(k) solves the problem over all the instances of size k, and is defined asfollows:

ΠFact(k) = (O(k), µ, w1, w2, R1(k), R2(k), iin, iout),

where:

– O(k) = 〈`, b, j〉 | ` ∈ A,B, b ∈ 0, 1, j ∈ 0, 1, . . . , k − 2 ∪ 〈`, b, j〉 | ` ∈ C, X, n, b ∈0, 1, j ∈ 0, 1, . . . , 2k − 2 ∪ 〈i, j〉 | i, j ∈ 0, 1, . . . , k − 2 ∪ s0, s1, . . . , sk−1 ∪ 〈d, i〉 | i ∈−1, 0, 1, 2, . . . , k − 2 ∪ 〈e, i〉 | i ∈ 0, 1, . . . , k − 1 is the set of objects. Objects 〈`, b, j〉, with` ∈ A,B, and 〈C, b, j〉 are used to represent candidate solutions and their products, respectively,

Page 148: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

148 A. Leporati, C. Zandron, G. Mauri

s

Objects <i,j>

Objects

Multiplication rules

Comparison rules

1

<n,b,p>

Membrane division rules

2

k−1

Fig. 1. The initial state of system ΠFact(k)

as described above. Similarly, objects 〈n, b, j〉 and 〈X, b, j〉 are used to represent the instance n andthe result of the bitwise comparison between n and C, respectively. Objects sj are used to drivethe first phase of computation, in which all possible candidate solutions are generated. Objects〈i, j〉 are instead used to correctly multiply the candidate solutions, whereas objects 〈d, i〉 and 〈e, i〉drive the comparison between C and n and the (eventual) expulsion of A to region 1, respectively.As we can see, the number of objects in O(k) is polynomial with respect to k, the instance size;

– µ = [ [ ]2]1 is the initial membrane structure. At the beginning of the computation, the system iscomposed by a skin membrane which encloses a single subsystem, as shown in Figure 1;

– w1 = ∅ is the multiset of objects initially present into the skin membrane;– w2 is the multiset of objects initially present into the subsystem. Such objects represent the in-

stance n of the problem (a k–bit integer number which is the product of two unknown primenumbers p and q). Moreover, there is one copy of the symbol sk−1 which is used to start the gen-eration phase, where all possible candidates for p and q are generated through membrane division.Further, there is also one copy of each object 〈i, j〉, for all i, j ∈ 0, 1, . . . , k− 2; these objects areduplicated during the generation phase, and are used to correctly multiply the candidate solutions;

– R1(k) = ∅ is a set of rules associated with region 1 (the skin);– R2(k) is the set of rules associated with region 2 (the subsystem). There are three kinds of rules:

rules which generate all possible candidate solutions, using membrane division:

[sj ]2 → [〈A, 0, j〉〈B, 0, j〉sj−1]2[〈A, 0, j〉〈B, 1, j〉sj−1]2[〈A, 1, j〉〈B, 0, j〉sj−1]2[〈A, 1, j〉〈B, 1, j〉sj−1]2 (2)

for all j ∈ 1, 2, . . . , k − 1,

rules which compute the product C = A·B of the two candidates, and rules which compare C withn, and expel the first candidate (A) to region 1 if such comparison is successful. Unlike what isusually found in the literature, the above division rules do not duplicate the number of membranesat each step, but rather they quadruplicate it. Let us note, however, that this operation can beperformed even if we assume that we are only able to duplicate membranes: we first duplicate themembrane with the two possible values of bit aj , and then for each of the membranes obtainedwe further duplicate, producing the two possible values of bit bj ;

– iin = 2 is the input membrane;– iout = 1 (the skin) is the output membrane.

The computation is composed of two phases:

1. Generation phase: using membrane division, the subsystem initially present into the skin gen-erates 4k−1 subsystems. Each subsystem contains a pair of candidates (A,B) for the factors p andq of n.

2. Verification and output phase: each of the 4k−1 subsystems created during the generationphase performs the multiplication C = A · B of its two candidate factors. Then it checks (by a

Page 149: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Solving the Factorization Problem with P Systems 149

bitwise comparison) whether C = n and, in case of positive answer, it expels to region 1 the firstcandidate (A).

The next subsections give a detailed description of each computation phase.

Generation phase As stated above, this first phase uses membrane division to generate 4k−1 subsys-tems, each one containing two candidate solutions A and B (two (k−1)–bit integer numbers, expressedin binary form as described above), as well as the objects 〈i, j〉, for all i, j ∈ 0, 1, . . . , k − 2, whichare needed to multiply them. The values generated in this way for A and B range from 0 to dn/2e.We point out that, as a matter of fact, it would suffice to consider numbers ranging from 1 to d√n e.However, this would complicate in a non trivial way the definition of the system ΠFact(k), withoutgiving a true advantage (at least, from a theoretical point of view). In fact, if the instance n of theproblem is correctly chosen, then there exists only one possible factorization having two factors p andq also in the range from 0 to dn/2e. A number of subsystems of ΠFact(k) will certainly make uselesscomputations, hence wasting computational resources, but this a major concern only if we shouldreally implement the algorithm in a true, biological (or whatever) membrane system.

The division process is driven by the presence of symbols sk−1, . . . , s1, s0 into the subsystemsgenerated so far. The subsystem (membrane 2) initially present into ΠFact(k) contains the symbolsk−1, which activates the corresponding rule from (2). As a result of the application of this rule,membrane 2 is divided in four copies with all its content (objects and rules). The symbol sk−1 isreplaced with sk−2 in all the generated subsystems. Moreover, each subsystem contains one possibleconfiguration for the (k − 1)-th bit of the two candidate solutions A and B. In other words, thefirst subsystem contains the objects 〈A, 0, k − 1〉 and 〈B, 0, k − 1〉, corresponding to the fact that bitsak−1 and bk−1 are both equal to zero. The second subsystem contains the objects 〈A, 0, k − 1〉 and〈B, 1, k − 1〉, corresponding to ak−1 = 0 and bk−1 = 1, respectively. Similarly, the third subsystemcontains the objects 〈A, 1, k − 1〉 and 〈B, 0, k − 1〉, while the fourth one contains 〈A, 1, k − 1〉 and〈B, 1, k − 1〉. Each of these subsystems also contains one copy of symbol sk−2, as well as the rules (2).The rule

[sk−2]2 → [〈A, 0, k − 2〉〈B, 0, k − 2〉sk−3]2[〈A, 0, k − 2〉〈B, 1, k − 2〉sk−3]2[〈A, 1, k − 2〉〈B, 0, k − 2〉sk−3]2[〈A, 1, k − 2〉〈B, 1, k − 2〉sk−3]2

can thus be applied in each subsystem. As a result, we obtain four subsystems from each initialsubsystem, which contain all previous rules as well as the objects which represent the correspondingassignments to the (k − 2)-th bit for both candidate solutions A and B. Each copy of object sk−2 isreplaced with a copy of object sk−3, and so on. This process, which is depicted in Figure 2 for k = 3,terminates when 4k−1 subsystems have been obtained, each containing the symbol s0. Clearly, thisphase is performed in linear time with respect to k. The system ΠFact(k) is now ready to execute theverification phase.

Verification and output phase During this phase, each of the 4k−1 subsystems generated duringthe first phase computes the product C = A ·B between its candidate solutions A and B, and checkswhether the result C is equal to n. If so, it outputs A to region 1.

Let us focus our attention to a single subsystem. To compute the product C = A · B, we use thefollowing cooperative rules, which are similar to those of system ΠProd(k) described above: for alli, j ∈ 0, 1, . . . , k − 2, and for all l ∈ 0, 1, . . . , 2k − 1,

〈A, 0, i〉〈B, 0, j〉〈i, j〉 → 〈C, 0, i + j〉〈A, 0, i〉〈B, 0, j〉,〈A, 0, i〉〈B, 1, j〉〈i, j〉 → 〈C, 0, i + j〉〈A, 0, i〉〈B, 1, j〉,〈A, 1, i〉〈B, 0, j〉〈i, j〉 → 〈C, 0, i + j〉〈A, 1, i〉〈B, 0, j〉,〈A, 1, i〉〈B, 1, j〉〈i, j〉 → 〈C, 1, i + j〉〈A, 1, i〉〈B, 1, j〉,

Page 150: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

150 A. Leporati, C. Zandron, G. Mauri

S2

S1S1S1 S1

<A,0,1> <A,0,1>

<B,0,1> <B,1,1><A,1,1><B,0,1>

<A,1,1><B,1,1>

S0 S0 S0 S0

<A,0,1><A,0,1> <A,0,1> <A,0,1>

<B,0,0><A,0,0> <A,0,0>

<B,1,0><A,1,0><B,0,0>

<A,1,0><B,1,0>

S0 S0 S0 S0<B,0,0><A,0,0> <A,0,0>

<B,1,0><A,1,0><B,0,0>

<A,1,0><B,1,0>

S0 S0 S0 S0

<B,0,1> <B,0,1><B,0,1> <B,0,1>

<B,0,0><A,0,0> <A,0,0>

<B,1,0><A,1,0><B,0,0>

<A,1,0><B,1,0>

S0 S0 S0 S0

<A,0,1><A,0,1><B,0,1> <B,0,1><B,0,1>

<A,0,1> <A,0,1><B,0,1>

<B,0,0><A,0,0> <A,0,0>

<B,1,0><A,1,0><B,0,0>

<A,1,0><B,1,0>

<B,1,1> <B,1,1> <B,1,1> <B,1,1>

<A,1,1> <A,1,1> <A,1,1> <A,1,1> <A,1,1> <A,1,1> <A,1,1> <A,1,1><B,1,1> <B,1,1> <B,1,1> <B,1,1>

Fig. 2. An example of generation phase, for k = 3

〈C, 0, l〉〈C, 0, l〉 → 〈C, 0, l〉,〈C, 0, l〉〈C, 1, l〉 → 〈C, 1, l〉,〈C, 1, l〉〈C, 1, l〉 → 〈C, 0, l〉〈C, 1, l + 1〉.

These rules are present in region 2 in the initial setting of ΠFact(k), and are copied to each generatedsubsystem during the generation phase.

After the product C = A · B has been computed, the system uses the following rules to compareit with n:

〈C, 0, i〉〈n, 0, i〉 → 〈X, 0, i〉,〈C, 0, i〉〈n, 1, i〉 → 〈X, 1, i〉,〈C, 1, i〉〈n, 0, i〉 → 〈X, 1, i〉,〈C, 1, i〉〈n, 1, i〉 → 〈X, 0, i〉,〈X, 0, k − 1〉 → 〈d, k − 2〉,〈d, i〉〈X, 0, i〉 → 〈d, i− 1〉 for all i ∈ 0, 1, . . . , k − 2,〈d,−1〉 → 〈e, k − 1〉 · · · 〈e, 1〉〈e, 0〉,〈e, i〉〈A, 0, i〉 → 〈A, 0, i〉out,

〈e, i〉〈A, 1, i〉 → 〈A, 1, i〉out.

The first four rules compute a bitwise XOR between every bit of C and the corresponding bit of n.The resulting sequence X of k bits is represented by a multiset whose objects 〈X, b, i〉 (with b ∈ 0, 1and j ∈ 0, 1, . . . , k − 1) contain the label X in their first component. The next three rules checkwhether all the bits of X are equal to 0, that is, they check whether C = n. This check is performedin linear time, one bit at a time, starting from the most significant bit. If such bit is 0, then the first

Page 151: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Solving the Factorization Problem with P Systems 151

rule produces the object 〈d, k − 1〉, and the check proceeds with the next bit. On the other hand, ifthe most significant bit of X is 1, then the object 〈d, k − 1〉 is not produced, and the computation ofthe entire subsystem halts. If every bit of X is zero, then the object 〈d,−1〉 is produced at the endof the check, which in turn produces the objects 〈e, k − 1〉, . . . , 〈e, 1〉, 〈e, 0〉. These objects are used bythe last two rules, that in one step expel the multiset which represents the binary number A to region1.

Let us note that, up to now, we have neglected two details in the construction of ΠFact(k): (1)how to start the verification phase when the generation phase has ended, and (2) how to start, ineach subsystem, the comparison between C and n only after the computation of C = A ·B has beencompleted. These are two synchronization problems. The first can be easily solved by using activemembranes: it suffices to set the polarization of membranes to different values during the variousphases of the computation. Precisely, rules (2) of the generation phase should be made applicable onlywhen the polarization of membrane 2 is zero; at the end of the phase, through the rule [s0]

02 → [ ]12

(notice that symbol s0 is consumed) we can modify the polarization of the membrane, so that theverification phase can start. Of course, all the rules concerning the multiplication of A and B shouldbe applied only if the polarization of membrane 2 is 1. The second synchronization problem, instead,can be solved by putting a step counter into each subsystem, which is decremented at each step duringthe computation of C = A ·B. When the counter reaches the value zero, then the comparison betweenC and n starts. Since at each step of multiplication all the contributions aibj2i+j (with i 6= j) aretaken into account, after at most a linear number of steps all k2 contributions, as well as the carrybits generated during the additions, will be summed. Hence, a conservative value which can be usedto initialize the step counter is 3k. Operatively, we add the rules:

[p]12 → [p− 1]12 ∀ p ∈ 1, 2, . . . , 3k

into the region enclosed by membrane 2. All these rules are copied during the generation phase, andbecome active only when the polarization of membrane 2 becomes 1 (that is, when the generationphase ends). A further rule:

[0]12 → [0]02

switches the polarization back to 0, so that the comparison between C and n can start. Of course,this requires that the rules which perform such comparison can be made applicable only when thepolarization of membrane 2 is 0. Note that interference with the rules concerning the generation phasedoes not occur, since the two phases of computation work on different kinds of objects.

Concerning the time complexity of P system ΠFact(k), it is clear that the generation phaseis executed in linear time with respect to k, since at each cellular step a different symbol froms0, s1, . . . , sk−1 is used. As told above, in each of the subsystems generated during this phase,the multiplication between the two candidates A and B is executed in linear time (recall that we usea counter for the computation steps, which is initialized to 3k). The bitwise XOR between every bitof the result C and the corresponding bit of n is executed in one cellular step; on the other hand,checking whether all the bits obtained from the bitwise XOR are equal to zero requires a linear numberof steps in the worst case. Finally, expelling the first candidate solution (A) to region 1 requires justone additional cellular step. We can thus conclude that the total number of cellular steps performedby ΠFact(k) is linear with respect to k, the instance size.

4 Conclusions

Starting from the framework which was introduced in [7] to solve NP–complete decision problems,we have proposed a family ΠFact(k)k∈IN of P systems that solves a very common and interestingproblem: Factorization. This problem, which is neither a decision nor an optimization problem, iscurrently considered intractable. That is, no deterministic (or even probabilistic) polynomial time algo-rithm is known, which can be executed on Turing machines, that solves the problem for every possibleinstance. For this reason, Factorization is used in a large number of cryptographic applications,the most famous of which is certainly the public key cryptosystem RSA [22].

Page 152: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

152 A. Leporati, C. Zandron, G. Mauri

The structure of the P system ΠFact(k) is very simple. The system is initialized with a multisetwhich expresses the integer number n to be factorized, as well as some additional work objects. Atthe beginning of the computation, an exponential number of subsystems is generated by membranedivision, each containing one pair (A,B) of candidate solutions for the factors of n. Subsequently, eachsubsystem computes the product C = A · B, and compares the result C with n. If the two numbersare found equal, then the subsystem has found the factors of n, and it outputs one of them (A) to theregion enclosed by the skin membrane. The number of objects and rules in our family of P systemsgrows polynomially with respect to k, the instance size.

For the sake of clarity, our solution scheme uses cooperative rules. However, cooperation alwaysoccurs between no more than three objects. Such kind of cooperation can be easily removed by comput-ing the product C = A ·B, and the subsequent comparison between C and n, through and/or/notboolean circuits, and simulating these circuits using mobile catalysts, with or without the use ofpromoters and of weak priorities between rules, as shown in [1]. Another possibility is to transformall and/or/not circuits into reversible Fredkin circuits and simulate them using energy–based Psystems, as shown in [5].

References

1. R. Ceterchi, D. Sburlan: Simulating Boolean circuits with P systems. In Membrane Computing, Interna-tional Workshop WMC 2003, Tarragona, Spain, July 2003, Revised Papers, LNCS 2933, Springer–Verlag,Berlin, 2004, 104–122.

2. M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, F.J. Romero-Campero: Solving SAT with membrane cre-ation. Proc. CiE2005: New Computational Paradigms, Amsterdam, 2005, ILLC, Univ. of Amsterdam,X-2005-01, 82–91.

3. M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, F.J. Romero-Campero: A linear solution for QSAT withmembrane creation. In R. Freund, Gh. Paun, G. Rozenberg, A. Salomaa, eds., Membrane Computing: 6thInternational Workshop, WMC 2005, Vienna, Austria, July 18–21, 2005, LNCS 3850, Springer–Verlag,2006, 395–409.

4. M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, A. Riscos-Nunez: A fast P system for finding a bal-anced 2-partition. Soft Computing, 9 (2005), 53–58. See also M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, A. Riscos-Nunez, An efficient cellular solution for the partition problem, in Proc. of the Sec-ond Brainstorming Week on Membrane Computing, University of Seville, February 2–7, 2004, 237–246,http://www.gcn.us.es/Brain/bravolpdf/AGPART.pdf

5. A. Leporati, C. Zandron, G. Mauri: Universal families of reversible P systems. In Proc. of Machines,Computations and Universality Conf., MCU 2004, LNCS 2254, Springer–Verlag, Berlin, 2005, 257–268.

6. A. Leporati, D. Pagani: A membrane algorithm for the Min storage problem. To appear in MembraneComputing: 7th International Workshop, WMC 2006, Leiden, The Netherlands, July 17–21, 2006, LNCS,Springer–Verlag.

7. A. Leporati, C. Zandron, M. A. Gutierrez-Naranjo: P systems with input in binary form. InternationalJournal of Foundations of Computer Science, 17(1), February 2006, 127–146.

8. V. Manca, S. Di Gregorio, D. Lizzari, G. Vallini, C. Zandron: A DNA algorithm for 3-SAT(11,20). InN. Jonoska, N. Seeman, eds., Pre–Proceedings of the 7th International Meeting on DNA Based Computers.Tampa, Florida, USA, 2001, 167–178.

9. V. Manca: Membrane algorithms for propositional satisfiability. In Pre–Proceedings of International Work-shop on Membrane Computing, Curtea de Arges, Romania, 2001, GRLMC TR 17, Rovira i Virgili Univ.,Tarragona, 2001, 181–192.

10. T.Y. Nishida: Membrane algorithms. In R. Freund, Gh. Paun, G. Rozenberg, A. Salomaa, eds., MembraneComputing: 6th International Workshop, WMC 2005, Vienna, Austria, July 18–21, 2005, LNCS 3850,Springer–Verlag, 2006, 55–66.

11. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61 (2000),108–143. See also Turku Centre for Computer Science — TUCS Report No. 208, 1998,http://www.tucs.fi/Publications/techreports/TR208.php

12. Gh. Paun: Computing with membranes. A variant: P systems with polarized membranes. Int. J. of Foun-dations of Computer Science, 11 (2000), 167–182.

13. Gh. Paun: P systems with active membranes: Attacking NP-complete problems. J. Automata Languagesand Combinatorics 6 (2001), 75–90.

14. Gh. Paun: Membrane Computing. An Introduction. Springer–Verlag, Berlin, 2002.

Page 153: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Solving the Factorization Problem with P Systems 153

15. Gh. Paun, M.J. Perez-Jimenez: Recent computing models inspired from biology: DNA and membranecomputing. Theoria, 18 (2003), 72–84.

16. Gh. Paun, G. Rozenberg: A guide to membrane computing. Theoretical Computer Science, 287 (2002),73–100.

17. M.J. Perez-Jimenez, A. Riscos-Nunez: A linear solution for the Knapsack problem using active membranes.In Membrane Computing, International Workshop WMC 2003, Tarragona, Spain, July 2003, RevisedPapers, LNCS 2933, Springer–Verlag, Berlin, 2004, 250–268.

18. M.J. Perez-Jimenez, A. Riscos-Nunez: Solving the subset–sum problem by active membranes. New Gen-eration Computing, 22, 4 (2004).

19. M.J. Perez-Jimenez, F.J. Romero-Campero: Solving the BIN PACKING problem by recognizer P systemswith active membranes. In Gh. Paun, A. Riscos-Nunez, A. Romero-Jimenez, F. Sancho-Caparrini, eds.,Proceedings of the Second Brainstorming Week on Membrane Computing, University of Seville, ReportRGNC 01/04, 2004, 414–430.

20. M.J. Perez-Jimenez, A. Romero-Jimenez, F. Sancho-Caparrini: A polynomial complexity class in P systemsusing membrane division. In E. Csuhaj-Varju, C. Kintala, D. Wotschke, Gy. Vaszyl, eds., Proceedings ofthe 5th Workshop on Descriptional Complexity of Formal Systems, DCFS 2003, 284–294.

21. A. Riscos-Nunez: Cellular Programming: Efficient Resolution of NP–Complete Numerical Problems. Uni-versity of Seville, Department of Computer Science and Artificial Intelligence, Ph. D. Thesis, 2004.

22. R.L. Rivest, A.Shamir, L.M. Adleman: A method for obtaining digital signatures and public–key cryp-tosystems. Comm. of the ACM, 21(2), February 1978, 120–126.

23. P. Shor: Polynomial–time Algorithms for Prime Factorization and Discrete Logarithms on a QuantumComputer. SIAM Journal on Computing, 26(5), 1997, 1484–1509. See also P. Shor, Algorithms for Quan-tum Computation: Discrete Logarithms and Factoring. Proceedings of the 35th Annual Symposium onFoundations of Computer Science, 1994, 124–134.

24. C. Zandron, C. Ferretti, G. Mauri: Solving NP-complete problems using P systems with active membranes.In I. Antoniou, C.S. Calude, M.J. Dinneen, eds., Unconventional Models of Computation, Springer–Verlag,London, 2000, 289–301.

25. The P systems Web page: http://psystems.disco.unimib.it/

Page 154: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Building Combinational P Automata with Rewriting andActive Membrane Rules ?

Huan Long??, Yuxi Fu

BASICS, Department of Computer Science and EngineeringShanghai Jiao Tong University, 200240, Shanghai, P.R. China

longhuan,[email protected]

Abstract. In this paper, we introduce the RADP automata, which are a combination of P au-tomata defined in [4, 5] with rewriting and active membrane (division and dissolving) rules. Wepresent methods for constructing combinational automata that recognize the union, concatena-tion, or Kleene star of languages which are given by P automata. We also show that for anylanguage denoted by a regular expression, we can construct a RADP automaton correspondingto it.

1 Introduction

In 1998, P systems, also called membrane systems, were introduced by Gh. Paun in [8]. A compre-hensive bibliography and recent developments are available on the web at [10]. The P automata wereintroduced in [2] as membrane structures with communicating rules. Since then a series of papers aboutP automata with communication rules were published [4, 3, 5, 7]. In all these papers, the universalityof P automata was shown by proving that they could be elaborately built to simulate the counterautomata. The constructions of these P systems are indirect and lack of reusability and generality.Given any regular expression, it is hard to find the corresponding P automaton directly. This is justthe problem that we address in this paper.

2 Replicated Rewriting P automata with Antiport, Division andDissolving Rules

A membrane structure µ is defined by a string of correctly matching labeled parentheses. The degreeof the P system is defined as the number of the matching parentheses. Membrane structure can berepresented by a tree. From any tree node t, towards the direction to the leaves, all the nodes thatare reachable from t by one or more steps are generally called t’s offsprings. The the content of regioni is defined as the multiset that stands for it.

For the purpose of establishing a general approach for building combinational P automata, weintroduce a new variant of P systems: replicated rewriting P system with antiport, division anddissolving rules.

Definition 1. A replicated rewriting P system with antiport, division and dissolving rules is a con-struct

Π = (V, T, µ, (w1, R1), . . . , (wn, Rn)), where

– n ≥ 1 is the initial degree of the system;– V is an alphabet of objects;– T ⊆ V is the terminal alphabet;– µ is a membrane structure with n membranes, labeled with 1, . . . , n;

? The work is supported by The National Distinguished Young Scientist Fund of NNSFC (60225012), BDCC(03DZ14025), The National Nature Science Foundation of China (60473006), MSRA, and The BoShiDianResearch Fund (20010248033).

?? The corresponding author. E-mail: [email protected] . Postbox A0503391, 800 Dongchuan Road, Shang-hai 200240, P.R.China. Tel. +86 021 34205060-603.

Page 155: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Building Combinational P Automata 155

– wi ∈ V ∗, i ∈ 1, . . . , n, is the initial contents of region i;– Ri, i ∈ 1, . . . , n, is a finite set of evolution rules associated to region i. The rules in region i,

1 ≤ i ≤ n, can be of the following forms:1. Replicated rewriting rules:

(a) Replicated rewriting rules:(X → (v1, tar1)||(v2, tar2)|| . . . ||(vm, tarm)), m ≥ 1, X ∈ V, vk ∈ V ∗, 1 ≤ k ≤ m, tark ∈here, out ∪ inj |1 ≤ j ≤ n.

(b) Marking rules:(u → (u′, here))|∀u ∈ T; and all rules of the automaton are introduced in region i withthe symbols primed. Or, JiKi for short.

2. Antiport rules:(u, out; v, ini), u, v ∈ V ∗, 1 ≤ i ≤ n.

3. Active membrane rules:(a) Membrane division rules:

[iu, ζ]i → [i1v, ζ]i1[i2w, ζ]i2, u ∈ V +, v, w ∈ V ∗.(b) Membrane dissolving rules:

i. [i[i1ζ−]i1]i → [iζ−]i ;ii. [iu, [i1ζ−]i1]i → [iu, ζ−]i (or [i1[iu, ζ−]i]i1 → [i1u, ζ−]i1),u ∈ V +;iii. [iu, [i1ζ−]i1]i → [iu]i, u ∈ V +.

Let’s look at the rules contained in Definition 1 in detail:

1. Replicated rewriting rules:(a) Replicated rewriting rules [6]: By this rule, X will be rewritten to vk and then communicated

to the membranes indicated by tark, 1 ≤ k ≤ m.(b) Marking rules: This is not a new kind of rules. We give it a special name for its speciality in

our paper. This rule has higher priority than any other rule inside membrane i. This rule canbe simply seen as an ability of membrane i. u′ is unrecognizable to any other region withoutthe marking ability. In the following, we use ζ− to denote the offspring structure of ζ. Weuse Jζ−K to signify assigning marking ability to ζ’s skin membrane. If ζ has already had themarking ability, then Jζ−K is the very same as ζ. For instance, given a membrane structureζ=[1[2]2[3]3]1, then ζ− is the sub-structure [2]2[3]3, and Jζ−K means J1[2]2[3]3K1.

2. Antiport rules [4, 5, 3]: This rule means that if u is contained in region i, and at the same time vis contained in i’s parent region, then u must leave region i and enter the parent region, while vmust leave the parent region and enter region i simultaneously.

3. Active membrane rules: There are kinds of active membrane rules [1]. In this paper we only use themembrane division and dissolving rules. Moreover, compared with the original definitions, thereare some rational changes.(a) Membrane division rules: if u exists in region i, the membrane with label i will be divided

into two membranes with labels i1 and i2 respectively, while the objects specified in the ruleis replaced in the two new membranes by possibly new objects. At the same time, the sub-membrane structure ζ is copied and then distributed to region i1 and region i2. This rulecorresponds to the process of cell division.

(b) Membrane dissolving rules: three kinds of dissolving rules will be used in this paper.i. Automatically [1]: dissolving can happen without any specified catalyst. This rule corre-

sponds to the unsteadiness phenomenon in chemical reactions.ii. Catalytically: if u exists in region i, then the membrane with label i1 (or i) can be dissolved,

while membrane i1’s (or i’s) offspring ζ− and the objects in region i1 (or i) will all bereleased in membrane i (or i1). In this rule, u acts as a catalyst.

iii. Iteratively: if u exists in region i, then membrane i1 and all its offspring membranes willbe dissolved, while the objects inside them will be released in membrane i. This rule canbe seen as a macro processor of applying the above rule iteratively.

We call the above P system RADP system for short. Now we can define P automata based onRADP system.

Page 156: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

156 H. Long, Y. Fu

Definition 2. A RADP automaton with n membranes is a construct

Π = (V, T, µ, (w1, R1, F1), . . . , (wn, Rn, Fn)), where

– n ≥ 1, is the initial degree of the system;– V is an alphabet of objects;– T ⊆ V is the terminal alphabet;– µ is a membrane structure of n membranes labeled 1, . . . , n, membrane labeled by 1 is the skin

membrane;– wi ∈ V ∗, 1 ≤ i ≤ n, is the initial contents of region i;– Ri, 1 ≤ i ≤ n, is a finite set of replicated rewriting, antiport, division or dissolving membrane

rules associated to region i;– Fi ⊆ V ∗, 1 ≤ i ≤ n, is a finite set of multisets over V ; Fj 6= ∅ for at least one j, 1 ≤ j ≤ n.

The state of a region is described by its contents. At the beginning of a computation every regionis in the initial state. The configuration of the system is defined as the n−tuple of states of the nregions. At each step the content of every region is changed according to certain rules. A sequence ofconfigurations obtained in P system is a computation. The computation ends if the last configurationis final: all regions with Fi 6= ∅ are in state si ∈ Fi (successful computation), or if there is no ruleto be applied (unsuccessful computation). Particularly, in the RADP automata systems, not only thecontents of each region will change, but also the the degree of the system can change. An importantrestriction on our automata systems is that the evolution rules are applied in a sequential manner: ineach step, at most one rule is used in each region; if more than one rule can be used, exactly one ofthem is chosen and used.

A string w over the alphabet T is recognized by Π, if and only if there is a successful computationof Π such that the sequence of terminal symbols taken from the environment during the computationis exactly w. If more than one terminal symbol is taken from the environment in one step, then anypermutation of these symbols constitutes a valid subword of the input string.

3 General Approach for Building Combinational P Automata

Consider two P automata, Π1, Π2, of the following forms:

Π1 =(V1, T1, µ1, (w11, R11, F11), . . . , (w1n, R1n, F1n)), with n ≥ 1,

Π2 =(V2, T2, µ2, (w21, R21, F21), . . . , (w2m, R2m, F2m)), with m ≥ 1.

Assume that the language accepted by Π1 (Π2) over alphabet T1 (T2) is L1 (L2 resp.). W.l.o.g, wecan always construct Πi i = 1, 2, with a special feature that when Πi succeeds in accepting (rejecting)a word, there’s a symbol Succi (Reji) appearing in Πi’s skin membrane.

Take Π1, Π2 and the regular operator as the input. According to whether Π1 or Π2 has had themarking ability and the type of the operator, we will build a new automaton Π3. Let Lacc(Π3) = L3.L3 should satisfy the property that L3 is just the object language.

CASE I. Neither Π1 nor Π2 has had the marking ability, then

1. L3 = L1 ∪ L2

Π3 = (V3, T3, µ3, (w31, R31, F31), . . . , (w3n′ , R3n′ , F3n′)).

– V3 =V1 ∪ V2 ∪ Succ1, Succ2, Succ3, Rej1, Rej2, Rej3, Loc,T3 =T1 ∪ T2, µ3 = [1[2Jµ−1 K]2, [3Jµ−1

2 K]3]1, n′ = n + m + 3,

w31 =Loc, w32 = ∅, w33 = ∅,

Page 157: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Building Combinational P Automata 157

R31 =(u′ → (u′, out)),∀u ∈ T3 ∪ (Loc, out;w, in1),(w → (w, in2)||(w, in3)), (Rej1Rej2, out;Rej3, in),(Succ1 → (Succ3, here)), (Succ2 → (Succ3, here)),

R32 =(Succ1 → (Succ1, out)), (Rej1 → (Rej1, out)),R33 =(Succ2 → (Succ2, out)), (Rej2 → (Rej2, out)),R′11 =R11 ∪ (Succ1 → (Succ1, out)), (Rej1 → (Rej1, out)),R′21 =R21 ∪ (Succ2 → (Succ2, out)), (Rej2 → (Rej2, out)),

Where w ∈ T ∗3 is the input of Π3 automaton. After applying the antiport rule in the membrane1 of Π3, we unlock the Π3 automaton. The input word is sent into it. Two copies of the inputword w are sent to both Π1 and Π2 simultaneously. R′11 (R′21) stands for the updated rule setfor the skin membrane of Π1 (Π2 resp.).

– The initial states and rule sets of the other region are just the same as defined in Π1 and Π2.– F31 = Succ1, Succ2, F3i = ∅, i ∈ 2, . . . , n′: Π3 accepts w, i.e., Succ3 appears in region 1,

if and only if Succ1 or Succ2 appear in the system. Otherwise Rej3 will be generated.

2. L3 = L1 L2

Π3 = (V3, T3, µ3, (w31, R31, F31), . . . , (w3n′ , R3n′ , F3n′)).

–V3 =V1 ∪ V2 ∪ Succ1, Succ2, Succ3, Rej1, Rej2, Rej3, Loc,T3 =T1 ∪ T2, µ3 = [1J2µ−1 K2, [3Jµ−2 K]3]1, n′ = n + m + 2,

w31 =Loc, w33 = ∅,R31 =(u′ → (u′, out)),∀u ∈ T3 ∪ (Loc, out;w, in1),

([1Succ1, [3Jµ−2 K]3]1 → [1Succ1, Jµ−2 K]1), (Rej1 → (Rej3, here)),(Rej2 → (Rej3, here)), (Succ2 → (Succ3, here)), R33 = ∅,

R′11 =R11 ∪ (Succ1 → (Succ1, out)), (Rej1 → (Rej1, out)),R′21 =R21 ∪ (Succ2 → (Succ2, out)), (Rej2 → (Rej2, out)),

w ∈ T ∗3 is the input of Π3. The machine starts with the initial configuration. After applyingthe antiport rule, w comes into region 1. Then Π1 starts to work and marks every objectvisited by it. If Π1 reaches an acceptance state, it sends out Succ1 to region 1 by the rule(Succ1 → (Succ1, out)), which has been added to the rule set of Π1’s original skin regionR′11. Succ1 then acts as a catalyst in the reaction ([1Succ1, [3Jµ−2 K]3]1 → [1Succ1, Jµ−2 K]1).Membrane 3 surrounding Π2 will be dissolved, i.e., Π2 is liberated and starts to work. If therun of Π2 on the remaining unmarked objects is also successful, Succ2 will also be sent out.Then if there’s no (unmarked) objects remaining in region 1, Succ3 will be generated in region1. R′11 (R′21) stands for the updated rule set for the skin membrane of Π1 (Π2 resp.).

– The initial states and rule sets of the other regions are just the same as defined in Π1 and Π2.– F31 = Succ1Succ2, F3i = ∅, i ∈ 2, . . . , n′: the recognizing process will succeed if and only

if Succ1 and Succ2 appear in the system successively, and no unmarked objects remains inregion 1. Otherwise Rej3 will be generated.

3. L3 = L∗1

Π3 = (V3, T3, µ3, (w31, R31, F31), . . . , (w3n′ , R3n′ , F3n′)).

Page 158: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

158 H. Long, Y. Fu

V3 =V1 ∪ Succ1, Succ3, Rej1, Rej3, Loc, Diss,T3 =T1, µ3 = [1[2µ1]2]1, n′ = n + 2,

w31 =Loc, w32 = Succ1,R31 =(u′ → (u′, out)),∀u ∈ T3 ∪ (Loc, out;w, in1),

([1[2Succ1, µ1]2]1 → [1[2Loc1, µ1]2[3Diss, Jµ−1 K]3]1),([1Succ1, Jµ−1 K]1 → [1Succ1]1),

([1[3Diss, Jµ−1 K]3]1 → [1Diss, Jµ−1 K]1),(Rej1 → (Rej3, here)), (Diss → (Diss, out)),

R32 =(Loc1, out;Succ1, in2),R′11 =R11 ∪ (Succ1 → (Succ1, out)), (Rej1 → (Rej1, out)),

The input w gets into Π3 by the antiport rule. Meantime, the membrane division rule ([1[2Succ1,µ1]2]1 −→ [1[2Loc1, µ1]2[3Diss, Jµ−1 K]3]1) is applied. For the membrane 3 is unsteady, the rule([1[3Diss, Jµ−1 K]3]1 → [1Diss, Jµ−1 K]1) can be applied without any catalyst. That is, the mem-brane surrounding µ1 is dissolved, Diss and µ1 are released in region 1. Then Π1 starts towork. If Π1 succeeds in sending out Succ1 to region 1 by (Succ1 → (Succ1, out)), then therule ([1Succ1, Jµ−1 K]1 → [1Succ1]1) is applied, resulting in the dissolution of Jµ−1 K. Meantime(Loc1, out;Succ1, in2) is applied to [2Loc1, µ1]2. Then [2Succ1, µ1]2 is generated again. Nowthe membrane division rule could be applied again. This process will repeat until there’s norule applicable. R′11 stands for the updated rule set for the Π1’s skin membrane.

– The initial states and rule sets of the other regions are just the same as defined in Π1.– F31 = Succ1, F3i = ∅, i ∈ 2, . . . , n′: the recognizing process will succeed if and only if

Succ1 appears in Π3’s skin membrane, and no unmarked objects remains in region 1. OtherwiseRej3 will be generated.

CASE II. Both Π1 and Π2 have had the marking ability.The construction of Π3 is similar to case I. The modified parts are

1. L3 = L1 ∪ L2: µ3 = [1[2µ1]2, [3µ2]3]1.2. L3 = L1 L2: µ3 = [1µ1, [3µ2]3]1.

The rule ([1Succ1, [3Jµ−2 K]3]1 → [1Succ1, Jµ−2 K]1) in R31 now is replaced by ([1Succ1, [3µ2]3]1 →[1Succ1, µ2]1).

3. L3 = L∗1: In R31, ([1[2Succ1, µ1]2]1 → [1[2Loc1, µ1]2[3Diss, Jµ−1 K]3]1),([1Succ1, Jµ−1 K]1 → [1Succ1]1) and ([1[3Diss, Jµ−1 K]3]1 → [1Diss, Jµ−1 K]1) are replaced by ([1[2Succ1,µ1]2]1 → [1[2Loc1, µ1]2[3Diss, µ1]3]1),([1Succ1, µ1]1 → [1Succ1]1) and ([1[3Diss, µ1]3]1 → [1Diss, µ1]1).

CASE III. Only Π1 has had the marking ability.The construction of Π3 is similar to case I. The modified parts are

1. L3 = L1 ∪ L2: µ3 = [1[2µ1]2, [3Jµ−2 K]3]1.2. L3 = L1 L2: µ3 = [1µ1, [3Jµ−2 K]3]1.3. L3 = L∗1: In R31, ([1[2Succ1, µ1]2]1 → [1[2Loc1, µ1]2[3Diss, Jµ−1 K]3]1),

([1Succ1, Jµ−1 K]1 → [1Succ1]1) and ([1[3Diss, Jµ−1 K]3]1 → [1Diss, Jµ−1 K]1) are replaced by ([1[2Succ1,µ1]2]1 → [1[2Loc1, µ1]2[3Diss, µ1]3]1),([1Succ1, µ1]1 → [1Succ1]1) and ([1[3Diss, µ1]3]1 → [1Diss, µ1]1).

CASE IV. Only Π2 has had the marking ability.The construction of Π3 is similar to case I. The modified parts are

1. L3 = L1 ∪ L2: µ3 = [1[2Jµ−1 K]2, [3µ2]3]1.2. L3 = L1 L2: µ3 = [1J2µ−1 K2, [3µ2]3]1. The rule ([1Succ1, [3Jµ−2 K]3]1 → [1Succ1, Jµ−2 K]1) in R31 is

replaced by ([1Succ1, [3µ2]3]1 → [1Succ1, µ2]1).

In brief, the marking ability will only be assigned to the “elementary automata”. The reason forthis strategy is that, we should avoid marking an object before it has been visited by any elementaryautomaton.

Page 159: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Building Combinational P Automata 159

4 Regular P Automata

In this section, we show how to build the regular P automata gradually by what we have discussed inSection 2 and 3. For more notions from the theory of formal languages, the reader is referred to [9].

Definition 3. The regular expressions over an alphabet Σ∗ are all strings over the alphabet Σ ∪(, ), ∅,∪, ∗ that can be obtained as follows:

1. ∅ and each member of Σ is a regular expression.2. If α and β are regular expressions, then so is (αβ).3. If α and β are regular expressions, then so is (α ∪ β).4. If α is a regular expression, then so is α∗.5. Nothing is a regular expression unless it follows from 1 through 4.

The definition of finite P automata with communication rules were proposed in [5]. And thefollowing corollary can be naturally concluded from [5].

Corollary 1. Let L ⊆ Σ∗. Then if L is regular, it can be accepted by a finite RADP automaton.

According to Definition 3 of regular language given above, every regular expression β could be seenas a composition of some regular sub-expressions β1, . . . , βk under operations of Union, Catenationor Kleene star. And from Corollary 1, for each regular sub-expression βi, there exists a finite RADPautomaton Γi that Lacc(Γi) = βi (1 ≤ i ≤ k). Then implement the general approach given in section3, a finite P automata Γ could be constructed and Lacc(Γ ) = β.

5 Conclusion

In the traditional automata theory, the closure with respect to certain operations is one of the mostinvestigated properties, especially the methods of constructing automata for certain operations amongthe given sub-automata. However, up to now no paper has addressed this question for P automata. Asa try to solve this problem, we have introduced the so called RADP automata in this paper. We alsostate the concrete procedures for building automata that recognize the Union, the Concatenation, orthe Kleene Star of the given languages which are represented by some P automata. This approachhas no restrictions on the sub-automata. Hence it’s a general method and can be used iteratively. Ithas many advantages: easy extensibility, understandability, modularity and reusability.

However, there still remain some problems that are worth studying. Our future work will focus ontrying to minimize the complexity of the P systems (the number of membranes), while also preservingthe advantages of the current approach.

References

1. A. Alhazov, L. Pan, Gh. Paun: Trading polarizations for labels in P systems with active membranes. ActaInformaticae, 41, 2-3 (2004), 111–144.

2. E. Csuhaj-Varju, G. Vaszil: P automata. In Membrane Computing, LNCS 2579 (Gh. Paun, G. Rozenberg,A. Salomaa, C. Zandron, eds.), Springer-Verlag, Berlin, 2003, 219–233.

3. R. Freund, C. Martın-Vide, A. Obtulowicz, Gh. Paun: On three classes of automata-like P systems. Proc.Developments in Language Theory, 2003, 292–303.

4. R. Freund, M. Oswald: A short note on analysing P systems with antiport rules. Bulletin of the EATCS,78 (2002), 231–236.

5. R. Freund, M. Oswald, L. Staiger: ω − P automata with communication rules. Proc. Workshop on Mem-brane Computing, 2003, 203–217.

6. V. Manca, C. Martın-Vide, Gh. Paun: On the power of P systems with replicated rewriting. J. Automata,Languages, and Combinatorics, 6, 3 (2001), 359–374.

7. M. Oswald: P Automata. PhD Thesis, Department of Computer Science, Techn. Univ. Wieni, PhD Thesis,2004.

8. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61, 1 (2000), 108–143.9. G. Rozenberg, A. Salomaa, eds.: Handbook of Formal Languages. Springer-Verlag, Heidelberg, 1997.

10. The P Systems Web Page: http://psystems.disco.unimib.it

Page 160: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems with Array Objects and Array Rewriting Rules

K.G. Subramanian1, R. Saravanan2, M. Geethalakshmi3,P. Helen Chandra4, M. Margenstern5

1 Department of Computer Science,Sri Muthukumaran Institute of Technology,

Chennai 600 069, [email protected]

2 Department of Mathematics,Bharath Institute of Higher Education and Research,

Chennai 600 073, India3 Department of Mathematics,

Dr. MGR Janaki College, Adayar, Chennai, India4 Department of Mathematics,

Jayaraj Annapackiam College for WomenPeriyakulam 625 601, India

5 LITA, Universite Paul Verlaine-Metz,Ile du Saulcy, 57045 Metz Cedex, France

Abstract. Array P systems were introduced in [1] linking the two areas of membrane comput-ing and picture grammars. Puzzle grammars were introduced in [2] for generating connectedpicture arrays in the two-dimensional plane, motivated by the problem of tiling the plane. Onthe other hand incorporating into arrays the developmental type of generation used in the well-known biologically motivated L systems, Siromoney and Siromoney [7] proposed a very generalrectangular array generating model, called extended controlled tabled L array system (ECT-LAS). In this note we introduce two variations of the array P systems [1], called BPG array Psystems and parallel array P systems. The former has in the regions array objects and basicpuzzle grammar rules (BPG) [10] , which are a specific kind of puzzle grammar rules. In thelatter, the regions have rectangular array objects and tables of context-free rules as in [7]. Weexamine these two types of P systems for their array generative power.

1 Introduction

The area of membrane computing was initiated by Paun [3] introducing a new computability model,now called as P system, which is a distributed, highly parallel theoretical computing model, based onthe membrane structure and the behavior of the living cells. Among a variety of applications of thismodel, the problem of handling array languages using P systems has been considered by Ceterchi et al[1] by introducing array-rewriting P systems and thus linking the two areas of membrane computingand picture grammars.

On the other hand, in the study of generation and description of picture patterns considered asconnected digitized, finite arrays of symbols, syntactic techniques for pattern recognition and im-age analysis have played a significant role on account of their structure-handling ability. Adaptingthe techniques of formal string language theory, various types of picture or array grammars havebeen introduced and investigated [4, 5]. Puzzle grammars introduced in [2] are array generating two-dimensional grammars motivated by the problem of tiling the plane. A subclass called basic puzzlegrammars was introduced by Subramanian et al [10]. Another very general rectangular array generat-ing model, called extended controlled tabled L array system (ECTLAS) was proposed by Siromoneyand Siromoney [7], incorporating into arrays the developmental type of generation used in the well-known biologically motivated L systems. In this note we introduce two kinds of array P systems forgeneration of pictures which are arrays of symbols. In the first kind of array P systems we take theobjects in the regions as arrays and rules to be basic puzzle grammar rules. We call these P systemsas BPG array P systems. In the second kind, we take the objects in the regions as rectangular arrays.Tables of context-free rules are in the regions, with rewriting of a rectangular array being done at a

Page 161: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems with Array Objects and Array Rewriting Rules 161

time by rules in a single table, as in a ECTLA system of [7]. We call the resulting P system as parallelarray P system. We examine these two types of picture array generating P systems for their generativepower. Preliminary versions of these two systems were reported in [8, 9].

2 Preliminaries

Let Σ be a finite alphabet. A word or string w over Σ is a sequence of symbols from Σ. The set ofall words over Σ, including the empty word λ with no symbols, is denoted by Σ∗. An array over Σconsists of finitely many symbols from Σ placed in the points of ZZ2 (the two-dimensional plane) andthe points of the plane not marked with symbols of Σ, are assumed to have the blank symbol # /∈ Σ.We will pictorially represent the arrays indicating their non blank pixels, whenever possible. The setof all arrays over Σ will be denoted by Σ∗2. An array over a describing the picture token T is shownin Figure 1.

a a a a a a a a aaaaa

Fig. 1. An array describing picture token T.

An array, in particular can be rectangular. A rectangular m× n array M over Σ is of the form

M =

a11 · · · a1n

.... . .

...am1 · · · amn

where each aij ∈ Σ, 1 ≤ i ≤ m, 1 ≤ j ≤ n. The set of all rectangular arrays over Σ is denoted by Σ∗∗,which includes the empty array Λ.

We now recall the definition of basic puzzle grammars introduced in [10]. These grammars con-stitute a special class of puzzle grammars defined in [2] for generation of arrays non-rectangular orrectangular. We refer to [2] for notions of puzzle grammars and to [4, 5] for array grammars. Fornotions of formal language theory we refer to [6].

Definition 1. A basic puzzle grammar (BPG) is a structure G = (N, T, R, S) where N and T arefinite sets of symbols; N∩T = ∅; Elements of N are called non-terminals and elements of T , terminals;S ∈ N is the start symbol or the axiom; R consists of rules of the following forms:

A −→ aµ´¶³

B , A −→ aµ´¶³

B , A −→ B µ´¶³

a , A −→ Bµ´¶³

a ,

A −→ aµ´¶³

B

, A −→ a

µ´¶³

B, A −→ B

µ´¶³

a, A −→ Bµ´

¶³

a, A −→ aµ´

¶³

where A,B ∈ N and a ∈ T . We may omit the circle in the rule with a single a on the right side.Derivations begin with S written in a unit cell in the two-dimensional plane, with all the other cells

containing the blank symbol #, not in N ∪T . In a derivation step, denoted ⇒, a non-terminal A in acell is replaced by the right-hand member of a rule whose left-hand side is A. In this replacement, thecircled symbol of the right-hand side of the rule used, occupies the cell of the replaced symbol and the

Page 162: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

162 K.G. Subramanian et al.

non-circled symbol of the right side occupies the cell to the right or the left or above or below the cellof the replaced symbol depending on the type of rule used. The replacement is possible only if the cellto be filled in by the non-circled symbol contains a blank symbol.

The basic puzzle language (BPL) generated by the BPG G, denoted L(G), is the set of connectedfinite arrays over T , derivable in one or more steps from the axiom.

We denote the family of BPL by L(BPL).

Remark 1. A regular array grammar (RAG) [11, 12] consists of array productions of the followingforms:

A# → aB , #A → Ba ,A a→

# B,

# B→

A a, A → a

These are in fact included in the productions of a BPG. For example the equivalent of A# → aB isA −→ aiB

We denote by L(RAL) the family of the regular array languages (RAL) generated by RAGs. It isknown [10] that L(RAL) ⊂ L(BPL).

We next recall extended controlled tabled L array systems (ECTLAS) introduced in [7] for gen-erating rectangular arrays. These systems were introduced in [7] incorporating the Lindenmayer-likeparallel rewriting in arrays. Here we restrict ourselves to ECT0LAS where tables of context-free rulesonly are used.

Definition 2. An extended, controlled tabled 0L array system (ECT0LAS) is a 5− tuple G =(V, T, ℘,C, S, #) where• V is a finite nonempty set (the alphabet of G);• T ⊆ V is the terminal or target alphabet of G;• ℘ is a finite set of tables, t1, t2, . . . , tk, and each ti, i = 1, . . . , k, is a left, right, up, or downtable consisting respectively, of a finite set of left, right, up, or down rules only. The rules within atable are context-free in nature but all right hand sides of rules within the same table are of the samelength;• C is a control language over ℘;• S 6∈ V is the start rectangular array;• # is an element not in V (the marker of G).

Let G = (V, T, ℘,C, S, #) be an ECT0LAS. Let

M1 =

a11 · · · a1(n−1) a1n

.... . .

...am1 · · · am(n−1) amn

, M2 =

a11 · · · a1(n−1) ω1n

.... . .

...am1 · · · am(n−1) ωmn

with aij in V and ωin in V ∗, i = 1, . . . , m, j = 1, . . . , n. We say that M1 directly derives M2 (bya right table R in ℘ ) denoted M1 ⇒R M2 if M2 is obtained by applying in parallel the rules ina right table to all the symbols in the rightmost column of M1. Similarly we define ⇒L,⇒U ,⇒D

corresponding to a left, up, or down table. We write M1 ⇒ M2 if either M1 ⇒R M2, or M1 ⇒L M2,or M1 ⇒U M2, or M1 ⇒D M2. We write M0 ⇒∗ M iff there exists a sequence of derivationsM0 ⇒pi1 M1 ⇒pi2 · · · ⇒pin Mn = M , such that pi1pi2 · · · pin ∈ C.

A set M(G) of arrays is called an extended controlled table 0L array language (ECT0LAL) iff thereexists an extended controlled table 0L array system G such that M(G) = M |S ⇒∗ M, M ∈ T ∗∗.The family of extended controlled tabled 0L array languages is denoted by L(ECT0LAL).In particular,(1) if V = T and S is a rectangular array M0 ( the axiom), G is a controlled tabled 0L array system;(2) if C = ℘∗, then there is no control and the order of application of the tables is arbitrary; G is thenan extended tabled 0L array system; G is a tabled 0Larray system if in addition V = T .

Page 163: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems with Array Objects and Array Rewriting Rules 163

In these cases the corresponding family of languages is respectively denoted by L(CT0LAL), L(ET0LAL), L(T0LAL).

3 Array Rewriting P Systems with BPG Rules

Array P systems were introduced in [1] as an extension from the string rewriting P systems. In thesesystems arrays are placed in the regions of the system and they evolve by means of array-rewritingrules. In particular, the rules can be regular array rewriting rules. We now consider a variation of thearray P systems of degree m by taking the rules in the membranes as basic puzzle grammar rules. Wecall the resulting array P system as BPG array P system of degree m (EAPm(BPG)). (E refers tothe fact that the system is extended with a terminal alphabet). When the rules in the membranes aretaken as regular array grammar rules, we call the array P system as REG array P system of degreem. (EAPm(REGA)). The corresponding language classes of array P systems with regular and BPGrules are respectively denoted by L(EAPm(BPG)), L(EAPm(REGA)).

Definition 3. A BPG array P System of degree m(≥ 1) is a constructΠ = (V, T, #, µ, F1, · · · , Fm, R1, · · · , Rm, i0),

where V is the total alphabet, T ⊆ V is the terminal alphabet, # is the blank symbol, µ is a membranestructure with m membranes labeled in a one-to-one way with 1, 2, · · · ,m; F1, · · · , Fm are finite sets ofarrays over V initially associated with the m regions of µ; R1, · · · , Rm are finite sets of BPG rules overV ∪ T associated with the m regions of µ; the rules have attached targets, here, out, in (in general,here is omitted); finally, i0 is the label of an elementary membrane of µ (the output membrane).

A computation in a BPG array P system is defined in the same way as in a string rewritingP system [3] with the successful computations being the halting ones; each array from each regionof the system, which can be rewritten by a rule associated with that region (membrane), should berewritten; this means that one rule is applied (the rewriting is sequential at the level of arrays); Thearray obtained by rewriting is placed in the region indicated by the target associated with the rule used;“here” means that the array remains in the same region, “out” means that the array exits the currentmembrane - thus, if the rewriting was done in the skin membrane, then it can exit the system; arraysleaving the system are “lost” in the environment, and “in” means that the array is immediately sentto one of the directly lower membranes, non-deterministically chosen if several exist (if no internalmembrane exists, then a rule with the target indication in cannot be used).

A computation is successful only if it stops, i.e., if a configuration is reached where no rule canbe applied to the existing arrays. The result of a halting computation consists of the arrays composedonly of symbols from T placed in the membrane with label io in the halting configuration.

The set of all such arrays computed (we also say generated) by a system Π is denoted by AL(Π).The family of all array languages AL(Π) generated by systems Π as above, with at most m membranes,is denoted by EAPm(BPG). The regular array rewriting (REGA) rules are also BPG rules. So whenREGA rules alone are used in the regions, we call the family as EAPm(REGA).

By definition it follows that

1. EAPm(X) ⊆ EAPm+1(X) forX ∈ REGA, BPG2. EAPm(REGA) ⊆ EAPm(BPG)

Theorem 1. (i) L(RAL) ⊂ EAP1(REGA)(ii) L(BPL) ⊂ EAP1(BPG)(iii) EAP1(REGA) ⊂ EAP1(BPG)(iv) EAP1(REGA) ⊂ EAP2(REGA)(v) EAP1(BPG) ⊂ EAP2(BPG)(vi) EAP2(REGA) ⊂ EAP2(BPG)

Proof: The inclusions in (i)− (vi) are clear from the definitions.The proper inclusion (i) can be seen as follows: Let

Π1 =(A,B, a, a,#, [1 ]1,

A a A

B

, R1, 1

)

Page 164: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

164 K.G. Subramanian et al.

R1 = #A → Aa,A# → aA,B a→

# B,A → a,B → a

The regular array P System Π1 generates a language L1 consisting of arrays in the shape of tokenT but not necessarily with equal “arms”. But a regular array grammar cannot generate L1 as therewriting in a regular array grammar, when it reaches the “junction” in a T shaped array can eitherproceed horizontally (left or right) or vertically (down) and thus will fail to produce the third arm.The proper inclusion in (ii) can be seen similarly, by considering a language L2 consisting of arraysin the shape of token T , not necessarily of equal “arms” but with “protrusions”, i.e., with an extrasymbol a above every alternate symbol “a” in the horizontal left and right “arms” in the T shapedarray. The system Π1 can be modified to take care of this feature by having suitable BPG rules and

having the initial array in the following form :a

A a AB

. Again BPG rules will fail to produce the “third

arm”, for a reason similar to the case of REGA rules. The proper inclusion in (iii) follows by notingthat the language L2 described above is in EAP1(BPG) but regular array rewriting rules alone arenot enough to produce the “protrusions”. The proper inclusion in (iv) can be seen as follows:

Π3 =(A,B, a, a,#, [1[2 ]2]1,

Aa B

, ∅, R1, R2, 2

)

R1 =

# A→ (in)

A a

R2 = B# → aB(out), B# → aC,C → a,A → aThe non-terminals A and B take care of growing the vertical arm (in the skin membrane) and

the horizontal arm (in membrane 2), step by step; at any time the computation stops in membrane2 after using the rule A → a,B# → aC and C → a, in any order. In case after terminating A, thearray is sent out to skin membrane by the application of B# → aB, then it gets stuck in the skinmembrane. The L shaped arrays over a with equal “arms”, collected in membrane 2 constitute thelanguage generated. But this picture language L3 cannot be generated by a regular array grammarin just a single membrane, as the rules of a regular array grammar cannot maintain equal growthbetween horizontal and vertical “arms”.

The proper inclusion in (v) can be seen as follows: The array language L4 consisting of picturearrays (one of these is shown in Figure 2) with equal “arms” and “single protrusions” to the left of thevertical line of x′s and below the horizontal line if x′s, is generated by the following array P systemwith basic puzzle grammar rules.

Π4 =

A,B, C, D, E, F, x, [1[2 ]2]1,

Ax x B

x, ∅, R1, R2, 2

C A

R1 = A → x (in), C → x D (here), D → x (in) µ´¶³

µ´¶³

µ´¶³

R2 = B → x E(out), E → F ,µ´¶³

µ´¶³

x

F → x B(out), F → x U, A → x, U → xµ´¶³

µ´¶³

However, this language cannot be generated by BPG rules in just a single membrane as these rulescannot maintain equal growth between the horizontal and vertical directions.

The proper inclusion in (vi) is due to the fact that REGA rules cannot produce the “protrusions”as in the arrays of L4.

Page 165: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems with Array Objects and Array Rewriting Rules 165

xx x

xx x x x x

x x

Fig. 2. Array with equal “arms” and “protrusions”

4 Array Rewriting Parallel P Systems

We now consider another variation of the array P systems introduced in [1]. We take the objects inthis array P System of [1] as rectangular arrays . Also we take tables of context free rules of the forma → α, α ∈ V ∗, for an alphabet V , in the regions of the P system with the application of a table be-ing done as in a ECT0LAS [7]. We call the resulting array P system as parallel array P system (PAPS).

Definition 4. A parallel array P system (PAPS) is a constructΠ = (V, T, #, µ, F1, · · · , Fm, T1, · · · , Tm, i0), where• V is the total alphabet, T ⊆ V is the terminal alphabet.• µ is a membrane structure with m membranes labelled in a one to one way with 1, 2, · · · ,m;• F1, · · · , Fm are finite sets of rectangular arrays over V associated with the m regions of µ;• T1, · · · , Tm associated with m regions of µ are finite sets of left, right, up, down tables of contextfree rules over V of the form a → α, a ∈ V, α ∈ V ∗ ; all α

′s have the same length in a table.

• the tables have attached targets here, out, in• i0 is the label of an elementary membrane of µ (output membrane).

When a set T is distinguished, we speak about an extended PAP system; when V = T we have anon-extended system.

A computation in a PAP system is defined in the same way as in a string rewriting P systemwith the successful computations being the halting ones: each rectangular array, from each region ofthe system, which can be rewritten by a table of rules , rewriting being done as in a ECT0LAS [7]associated with that region (membrane), should be rewritten; this means that one table is applied andthe rectangular array obtained by rewriting is placed in the region indicated by the target associated withthe table used (here means that the rectangular array remains in the same region, out means that therectangular array exits the current membrane - thus , if the rewriting was done in the skin membrane,then it can exit the system ; rectangular arrays leaving the system are “lost” in the environment,and in means that the rectangular array is immediately sent to one of the directly lower membranes,nondeterministically chosen if several exist. If no internal membrane exists, then a table with the targetindication in cannot be used.

A computation is successful only if it stops, i.e., if a configuration is reached where no table canbe applied to the existing rectangular arrays. The result of a halting computation consists of the rect-angular arrays composed only of symbols from T placed in the membrane with label i0 in the haltingconfiguration. The set of all such rectangular arrays computed by a system Π is denoted by RAL(Π).

The family of all array languages RAL(Π) generated by systems Π as above, with at most m mem-branes, is denoted by EPAPm; if non- extended systems are considered, then we write PAPm.

By definition, the following inclusions are clear.(i) PAPm ⊆ PAPm+1 for m ≥ 1.(ii) EPAPm ⊆ EPAPm+1 for m ≥ 1.(iii) PAPm ⊆ EPAPm for m ≥ 1.(iv) L(T0LAL) ⊆ PAP1

(v) L(ET0LAL) ⊆ EPAP1

Theorem 2. (i) PAP3\L(T0LAL) 6= ∅(ii) EPAP5\L(ET0LAL) 6= ∅

Page 166: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

166 K.G. Subramanian et al.

Proof:(i) Let Π5 = (V, V, [1 [2 [3 ]3 ]2 ]1,M0, φ, φ, T1, T2, φ, 3) where

V = X, ., M0 =X .X .X X

T1 = (R1, in), T2 = (U, out), (R2, in),

R1 = X → XX, . → . ., R2 = X → X, . → . are right tables.

U = X → XX

, . → .. is an up table.

The axiom rectangular array M0 is initially in the region 1. When the rules of the table R1 areapplied to this array it grows one column in the right and is then sent to region 2. If R2 is applied,then this array is sent to region 3 where it remains for ever and the language generated collects thisarray. If U is applied to M1 in region 2 the array grows upwards and is sent back to region 1.Thederivation then continues.

The array language generated consists of arrays of the form in Figure 3 where the array representstoken L (. is interpreted as blank) with equal “arms”. This array language belongs to PAP3 but it isnot in L(T0LAL) as controlling the application of right and up tables is not possible in a T0LAS.

X . . . .X . . . .X . . . .X . . . .X X X X X

Fig. 3. Array describing token L

(ii) Let Π6 = (V, T, [1 [2 [3 [4 [5 ]5 ]4 ]3 ]2 ]1,M0, φ, φ, φ, φ, T1, T2, T3, T4, T5, 5), where

V = A,B, a, b, T = a, b, M0 =b bb b

T1 = (R1, in), (R2, here), T2 = (L1, in), (L2, out),T3 = (U1, in), (U2, out), T4 = (D1, out), (D2, in), T5 = (U3, here)R1 = b → bA, a → aa, R2 = B → b, A → b, a → a are right tables.L1 = b → Ab, a → aa, L2 = A → b, B → b, a → a are left tables.

U1 = b → ab, a → a

a,A → B

a, U2 = a → a, B → A U3 = B → b, a → a are up tables.

D1 = b → ba

, a → aa

,A → aB D2 = b → b

a, a → a

a,A → a

b are down tables.

The axiom rectangular array is initially in the region 1. An application of the right table R1 allows thearray grow one column to the right and the array is immediately sent to region 2. Here the left tableL1 alone is applicable which grows the array in the left by one column. The array is then sent to region3 where the up table U1 alone is applicable and this allows the array to grow by one row upwards andis then sent to region 4; if the down table D2 is applied the array grows one row downwards and thearray is sent to region 5. Here the computation comes to an end with an application of the up tableU3, yielding a rectangular array over terminals and this is collected in the language L6 generated; IfD1 were applied in region 4, the array grows one row downwards but is sent out to region 3. Only theup table U2 can be applied without the top row growing but changing B’s to A. The array is thensent out to region 2 where again a similar change of symbols happens in the leftmost column. Againthe array is sent out to region 1 where an application of the right table R2 alone is possible and theprocess repeats with an application of R1 and so on. This kind of controlling growth one after anotheris not possible in an ECT0LAS. One of the arrays generated is shown in Figure 4. This proves thatEPAP5\L(ET0LAL) 6= ∅.Acknowledgement K.G Subramanian is grateful to Prof. M. Margenstern, University of Paul Verlaine-Metz, France, for his invitation and the University for the support to visit the university duringMay-June, 2006. Part of this work was done during this visit.

Page 167: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

P Systems with Array Objects and Array Rewriting Rules 167

b a a a a ba b a a b aa a b b a aa a b b a aa b a a b ab a a a a b

Fig. 4. An array in L6

References

1. R. Ceterchi, M. Mutyam, Gh. Paun, K.G. Subramanian: Array-rewriting P systems. Natural Computing,2 (2003), 229–249.

2. M. Nivat, A. Saoudi, K.G. Subramanian, R. Siromoney, V.R. Dare: Puzzle grammars and context-freearray grammars. Int. Journal of Pattern Recognition and Artificial Intelligence, 5 (1991), 663–676.

3. Gh. Paun: Membrane Computing: An Introduction. Springer-Verlag, Berlin, 2002.4. A. Rosenfeld: Picture Languages. Academic Press, New York, 1979.5. A. Rosenfeld, R. Siromoney: Picture languages – a survey. Languages of Design, 1 (1993), 229–245.6. A. Salomaa: Formal Languages. Academic Press, New York, 1973.7. R. Siromoney, G. Siromoney: Extended controlled tabled L-arrays. Information and Control, 2 (1977),

119–138.8. K.G. Subramanian, M. Geethalakshmi, P. Helen Chandra: Array rewriting P systems generating rectangu-

lar arrays. Paper presented at the National Conference on Intelligent Optimization Modeling, GandhigramRural Institute-Deemed University, Gandhigram, India, March 2006.

9. K.G. Subramanian, R. Saravanan, K. Rangarajan: Array P systems and basic puzzle grammars. Paperpresented at the National Conference on Intelligent Optimization Modeling, Gandhigram Rural Institute-Deemed University, Gandhigram, India, March 2006.

10. K.G. Subramanian, R. Siromoney, V.R. Dare, A. Saoudi: Basic puzzle languages. Int. Journal of PatternRecognition and Artificial Intelligence, 9 (1995), 763–775.

11. Y. Yamamoto, K. Morita, K. Sugata: Context-sensitivity of two-dimensional array grammars. In ArrayGrammars, Patterns and Recognizers (P.S.P. Wang, ed.), World Scientific, Singapore, 1989, 17–41.

12. P.S.P. Wang: Array Grammars, Patterns and Recognizers. World Scientific, Singapore, 1989.

Page 168: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Tissue P Systems with Parallel Rules on Channels

Xian Xu∗

Department of Computer Science and TechnologyShanghai Jiao Tong University

800 Dong Chuan Road (200240), Shanghai, [email protected]

Abstract. We introduce a new variant of P systems as an improvement of the design in [5]. TheP systems here allow parallelism in rules application on synapses (or links, channels), renderingthe systems more efficient. We describe the execution mechanism of our P systems, make analysison their computation power, and illustrate the running by an example.

1 Introduction

Cell-like P systems [7], [8], [9], of which kind the most typical one is the transition P system, are akind of distributed computing device inspired from the organization of living cells. Tree-like nestedmembrane structure (no linking), reaction rules inside membranes and objects communicating amongmembranes are characteristics of cell-like P systems. With the maximal parallelism in rules application,cell-like P systems, together with a wealth of variants, possess the computation power of Turingmachines.

Tissue-like P systems are a different kind of systems that mimic the interaction among cells con-stituting tissues of various sort. They emphasize the collaboration rather than the process within thecells. So tissue-like P systems have graph-like membrane linking (no nested structure). The character-istics of tissue-like P systems are as follows.

– The primary rules are symport and antiport rules [4].– The membranes (cells) can have states to help enrich the evolving of the objects in them [6].– The links can have states to control the communication between cells [5].

• On links, rules are applied in a sequential manner. The loss in computational power causedby eliminating parallelism is somewhat compensated by the state-on-link mechanism.

• At the system level (among cells/links) the rules are applied in parallel.• Computational power.

∗ Two cells, sufficient states and small-weight antiport rules lead to Turing completeness.∗ One cell (any number of states and however rules are designed) results in Parikh images

of languages generated by matrix grammars without appearance checking.See [5], [6] for more specific explanation of tissue-like P systems.

Motivation

We extend the parallelism to the rule application on links (or channels) among cells, that is, fromon-channel-sequentiality and inter-channel-parallelism to on- and inter- channel-parallelism. We call itlargest parallelism to distinguish it from maximal parallelism, which means that no further rules canbe applied to the remaining objects in the current membrane, and this can be seen from the definitionand algorithm below in this paper. The extension can be justified in two aspects.

∗The author is supported by The National Distinguished Young Scientist Fund of NNSFC (60225012),BDCC (03DZ14025), The National Nature Science Foundation of China (60473006), MSRA, and The BoShiD-ian Research Fund (20010248033).

Page 169: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Tissue P Systems with Parallel Rules on Channels 169

– From biological point of view, the reactions of different kinds usually effect in a manner that areaction is applied whenever possible. The communication between cells is an automatic processwhenever some condition (such as concentration and temperature) is met. And in fact it is fre-quent that several communications are enabled at the same time in some state of the links. Inanother word, the highly randomized biological processes concerning communication in tissues aresurely not confined to sequential functioning. We can mention the signaling pathways as a kindof examples. In a typical pathway (for instance, the Wnt pathway, a signaling pathway related tohematopoiesis), the triggering of the initial signal on the surface of a cell can be caused by severalkinds of molecules, resulting in several parallel sub-pathways to the nucleus.

– From theoretical viewpoint of a computing device, parallelism is a very significant element in com-putation concerning various scientific areas, such as physics, astrology and etc. It well transcendssequential computation in the sense that it can provide a much neater, more natural and intuitivecomputational model in a lot of cases. A body of theories (parallel computing theory, for example)and technologies (grid computing, for example) have been studied and designed to exploit thestrength in parallelism.

2 Tissue P Systems with Parallel Rules on Channels

The basic idea of the (enlarged) parallelism is the thought of semi-steps, that is, to place a pool foreach channel in the dynamically executing system, as rules are applied in parallel among differentchannels. Under the system global clock, each step is divided into two halves, or semi-steps.

1. The first semi-step serves as a synchronizer to collect all the rules possible to effect into the poolassociated with the channel. Notice that the rules put into the pool must have some parallelcharacteristics, that is they should have no dependence on each other to grant them the ability toexecute simultaneously. Otherwise, they have to be applied sequentially, as in the original tissueP systems with channel states in [5].

2. The second semi-step is simple. Just execute all the rules in the pool, which empties the pool foranother full clock step.

In the original tissue P systems with channel states, all the states of the channels in the systemare from the same states set K, but actually this is somewhat of little realistic sense, since in realbiological systems the possible states of different communicating channels are probably distinct fromone another, maybe only interleaving in some part of them. So it is better generalized to that eachchannel has its own states set, for example Kij for all possible states of channel from cell i to cell j.

2.1 Definition

Now we give the formal definition.

Definition 1. A tissue P System with parallel rules on channels is a construct∏

= (O, T, Syn, (ωi)1≤i≤m, E, (Kij)(i,j)∈Syn, (sij)(i,j)∈Syn,

(Rij)(i,j)∈Syn, (Pij)(i,j)∈Syn, i0),

with the components defined as follows:

– m. The degree of the system, that is, the number of membranes.– O. The finite objects set, or alphabet.– T ⊆ O. The terminal objects.– Syn. Synapses (another word for ‘links’). Syn ⊆ (i, j) | i, j = 0, 1, 2, ..., m(0 for the environ-

ment). It is an irreflexive, asymmetric and ordered relation on cells.– (ωi) ∈ O?. Initial objects (multiset) in each cell of the system.– E ⊆ O. Objects (in sufficient supply) in the environment.– Kij. The finite set of states of synapse (i, j).

Page 170: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

170 X. Xu

– sij. The initial state of synapse (i, j).– Rij. The finite set of rules on synapse (i, j). The rules are of the following form:

(s1, u/v, s2), s1, s2 ∈ Kij , u, v ∈ O?

It means in state s1, the synapse (i, j) can perform an antiport action, that is, transport objects ufrom cell i to cell j in exchange for objects v from cell j, and then shift its state to s2.

– i0 ∈ 1, 2, ..., m. The membrane for outputing results of computation.

Remark 1.The graph defined by Syn is directed, but the rules grant cells to communicate undirectedly, due tothe antiport rules (in general form).For convenience, we sometimes use Pij ⊆ Rij as the pool of the synapse (i, j) in transition steps ofthe system. The pool is used to collect the rules possible to be applied simultaneously in the currentstate of the synapse.

More definition We give more definition about the P system in Definition 1. The size of the Psystem defined in Definition 1 can be examined in three aspects.

– Number of cells: m;– Number of states: k , max(i,j)∈Syn |Kij |;– Size of rules: r , max(i,j)∈Syn|u|+ |v| | (s1, u/v, s2) ∈ Rij.

2.2 The execution of the P system

Below we describe the algorithm (or mechanism) of one time step in the execution of a P systemdefined in Definition 1. We focus on one synapse (i, j), as all the synapses have the same mechanism.Suppose the synapse (i, j) is currently in state s1.

1. In the first semi-step: selecting.(a) Choose all the rules (s1, u/v, s)(s ∈ Kij) on the synapse and put them into Pij ;(b) Classify the rules in Pij by the state s. That is, divide the rules by the equivalence relation

saying that two rules are equivalent if their goal states are the same. Thus we obtain severalequivalence classes of rules;

(c) Choose the equivalence class of the largest size, that is, the equivalence class holding thelargest number of rules, and eliminate other rules from Pij . If there are more than one suchclass, choose one randomly. Suppose the winning equivalence class is RC (rules class). We use|RC| to denote the size of the rules class.

Here we can see that both the largest parallelism and nondeterminism principles apply, withthe strengthening that the largest number of rules are selected at present.

2. In the second semi-time-step: executing.(a) Remove from RC those rules that can not be applied, for example, the desired objects does

not exist;(b) If the rules in RC (possibly only one) have no conflict, whose meaning we will make clear

below, then we are done before executing. Rename RC to RC ′ and go to (d);(c) Some conflict exists, for example (typically)1, several rules in RC compete for the same ob-

ject(s) in cell i or j. In this case, the successful application of one of the conflicting rulesmay fail another for application. Then RC can be divided again by the following equivalencerelation: Two rules are equivalent if they compete for the same objects u (in i or j). What weget are several classes of conflicting rules with respect to some objects, and there is no conflictbetween the classes2.

1In fact, this is the only kind of conflicts, as the rules are likely to be applied in ONE parallel step.2This can be achieved by a conflict-detecting algorithm starting from the single object, merging the con-

flicting sets and corresponding objects into multisets respectively, since the alphabet is finite. We do notdescribe it here to maintain succinctness.

Page 171: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Tissue P Systems with Parallel Rules on Channels 171

Now we can choose one rule from each conflicting rules class as the lucky one, and this choiceis not important since rules are deemed equivalent in the same class (for now no priority onrules is assumed in the system).So we gain a new set of rules, the number of which is the number of conflicting classes. Wedenote this set of rules as RC ′.

(d) Execute the rules in RC ′ simultaneously and pass the state of the synapse (i, j) to the goalstate indicated by the rules in it.

And this finishes one time step of execution of the P system.

Remark 2. Any rule that can be applied in a step (clock unit) must be applied, that is, the system isevolving whenever possible. If no rule is applicable on one synapse, then in this step nothing happenson that synapse, and the state maintains.

2.3 The computation of the P system

The computation description is as follows.

1. Initial configuration. m cells, with cell i having the objects ωi in it.2. Discrete computing procedure (assuming a system global clock).

In each step, apply the algorithm described above (section 2.2) and thus update the (cells in the)system.

3. Halting condition. The system halts if there is no rules applicable on any synapse.4. Results. The result of the computation should be collected in the cell i0. The result can be of two

kinds:(a) The vector representing the multiplicity of objects in the cell i0. The objects in O−T are not

counted. We denote this result by Psv(∏

m,k,r) (with the meaning of m, k, r explained before);(b) Multiset of objects from T or O in cell i0. This is more direct and can be used when the P

system is in generative mode. We denote this kind of result as Pss(∏

m,k,r) (with the meaningof m, k, r explained before).

3 An Example

To illustrate the execution of the P systems defined in Definition 1, we give an example as follows.

Example 1.

Π1 = (O, T, Syn, ω1, ω2, ω3, E, (Kij)(i,j)∈syn, (sij)(i,j)∈syn,

(Rij)(i,j)∈syn, (Pij)(i,j)∈syn, i0)

– m = 3– O = a, b.– T = a, b.– Syn = s1, s2, s3, where

s1 : (0, 1), s2 : (1, 2), s3 : (1, 3)

– ω1 = ω2 = ω3 = λ.– E = O.– K01 = s, s′, K12 = t, K13 = p.– s01 = s, s12 = t, s13 = p.– R01 = r1

01, r201, r

301, r

401, R12 = r1

12, r212, r

312, r

412, R13 = r1

13, where

r101 : (s, a/λ, s) r1

12 : (t, a/λ, t) r113 : (p, ab/λ, p)

r201 : (s, b/λ, s) r2

12 : (t, b/λ, t)r301 : (s, a/λ, s′) r3

12 : (t, λ/a, t)r401 : (s, b/λ, s′) r4

12 : (t, λ/b, t)

Page 172: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

172 X. Xu

Fig. 1. System Π1 (cells, synapses, rules and initial configuration)

– i0 = 3.

The system is presented graphically in Figure 1, where circles stand for cells. And the doubly encircledone is the output cell; the objects in each cell indicate the initial multiset of objects in it; arrowsrepresent synapses, with the rules associated with it along; 0 refers to the environment.

Now we follow the execution algorithm described above to see what the system can do. First wecompute the equivalent rule classes on each synapse. For synapse s1((0, 1)), the rule classes are

r101, r

201, r3

01, r401;

for synapse s2((1, 2)), the rule classes are

r112, r

212, r

312, r

412;

for synapse s3((1, 3)), the rule class isr1

13.Then we compute RC and RC ′.

– On synapse s1((0, 1)).• In state s. RC can be r1

01, r201, then RC ′ is just RC;

• In state s′. RC can be r301, r

401, then RC ′ is just RC.

– On synapse s2((1, 2)).• In state t. RC can be r1

12, r212, r

312, r

412. Then RC ′ can be any subset of RC. For instance,

when the computation is expected to halt, RC ′ may be r112, r

212, r3

12, r412, RC itself, or even

∅. When the computation fails to halt eventually, RC ′ may be r112, r

312 or r2

12, r412.

– On synapse s3((1, 3)). As there is only one rule on this synapse, parallelism is nullified here. Theonly rule is applied whenever there exists a pair of a, b in cell 1.

The actual run of the system starts from the initial state of each synapse, continues rules selectionand application, each step of which involves the analysis above based on the parallel rules applicationalgorithm (section 2.2), and gathers the result in membrane 3. From the computation, we can see that

1. In state s, cell 1 brings inside a number of copies of a and b, and this process ceases when thestate s shifts to state s′. At that time there has been some fixed number of a and b, say, n a andm b in cell 1.

Page 173: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Tissue P Systems with Parallel Rules on Channels 173

2. When, in cell 1, a and b are equal in number, there is a (successful) computation that the objectsin cell 1 are transferred to cell 3 pair by pair, which is ab, using rule r1

13 on synapse s3((1, 3)). Thiswill lead to a halting condition of the system, when all the objects except those in the environmentare in cell 3.

3. When, in cell 1, a and b differ in number, then when ab pairs are exhausted (taken to cell 3),the residual object (a or b) in cell 2 will cause the system to run forever, by cyclically (andsimultaneously) applying two of the rules on synapse s2((1, 2)), that is, r1

12, r312 in case of a

surplus a or r212, r

412 in case of a surplus b.

Note in the last case, the rule applications like this case on synapse s2((1, 2)) also exist, but thisis not relevant to the result of the overall computation.

The function of the system Π1 is obvious now. It computes the two-dimension (natural number)vectors with the two components equal to each other, that is

Psv(Π1) = (n, n) |n > 1.(note at least one copy of a is fetched in, so n is greater than 0)

The example shows that the parallelism of rules application on synapses is useful and effective insome sort of systems. In fact, more examples can be worked on, such as the mathematical computationand modeling of biological processes.

4 Computational Capability

Due to the parallelism we place in our P system, we think that apparently the computational powerof the P system defined in this paper is no less than that in [5], for what the latter can compute cansurely be computed by our P systems, simply through some technical approach to degrade parallelexecuting manner to sequential manner in rules applying, as sequentiality can be seen as a specialcase of parallelism in some sense. We leave this as a possibly open problem for future work and donot give the details here.

In our tissue-like P system, besides communicating rules by antiport, we can also add multisetrewriting rules to cells (inside)3. Thus the system behavior can be extended to be able to describemore intricate procedures. But the design of the two kinds of rules should be careful enough toaccommodate them cooperatively, that is, to avoid unexpected combination of rules executions. Whatthe rules perform ought to be collaborating to achieve some defined function.

5 Discussions

Actually, the rules selecting algorithm in section 2.2 can be improved a little. For example, we maychoose some RC resulting in a smaller RC ′, then one can immediately argue that if we choose anotherequivalence class when choosing RC, it may generate a better RC ′ from the viewpoint of largestparallelism. That is, because we merely use the size metric of an equivalence class, the algorithmmay violate the principle of largest parallelism a little. However, we still think that he mechanismwe designed above is reasonable and concise in a sense. For instance, it saves much time in decidingwhich set of rules to be applied, which is critical if the system being modeled is of real-time type.

As a matter of fact, the improvement is not so complicated. It is described as follows:After substep b) in step 1:

c) Do the same computation as that in substeps a), b) and c) of step 2 for each equivalence class RCi

obtained that time, and get RC ′i;d) Choose RC ′i with the largest size in rules number, denoted as RC ′;e) Execute the rules in RC ′ within one time step.

We can see that this improvement increases the time complexity of choosing RC ′. The details ofthe computing complexity remains to be examined closely.

3This is not included in the P systems defined in this paper.

Page 174: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

174 X. Xu

One would also argue that the parallelism on the synapses seems not so necessary, as the rulesapplicable simultaneously on one synapse can be merged into one rule, by merging the antiport rules,for example, the following two rules on the same synapse

(s1, u1/v1, s2), (s1, u2/v2, s2)

can be substituted by the rule(s1, u1u2/v1v2, s2)

This is really an alternative way to handle the parallelism, but only in some specific cases, that is ingeneral this is not possible (in the sense that the obtained system may probably not has the samefunction). And even the merging is possible in designing the system on some occasions, choosing notto merge all the rules as above appears more reasonable and readable, moreover, it can make thesystem more modular and clear for understanding the behavior. Hence, more often the merging is notpossible to conserve the original function of the system, such as the system Π1 given as an examplein section 3. So the algorithm in section 2.2 is indeed of much practical sense.

In fact, our algorithm implicitly offers a way to implement the merging of rules suitable for par-allel executing whenever possible. And if necessary, it can be used to minimize the P system underconsideration (details remain to be analyzed), though such minimizing would probably sacrifice someintuition in semantics.

6 Future Work

The work here is initial since it is developed only on the definition level, including some basic analysisand a simple example. More future work can be tried based on this paper, either on the computationmechanism or applications.

– In comparison with the cell-like P systems with active membranes[1][2], why not introduce activelinks in our tissue-like P systems, that is, the channel topology can be altering dynamically dur-ing system running(like in [3]). This may introduce more intriguing and convenient computationelements, rendering related applications (such as modeling biological processes) more smooth.

– A more general topic: dynamically membranes changing (forming or dissolving) and linking dynam-ics as described above (the readers are referred to population P systems[3] for more description).At least the design of states on links and/or states in cells provide some preliminary thoughts.This is a little far away from the work here, but the behavior of the new kind of P systems mightbe in more accordance with that of living cells in tissues.

– We consider it necessary to work out more intricate and practical examples to illustrate theeffectiveness and reflect in a sense the expressive capability of our P systems. Although the examplein section 3 is typical, in some applications more sophisticated design is needed. For instance, whenused to model signaling pathway in biological processes, a much larger and complicated interactiongraph should be depicted, analyzed and described to a certain abstract level, and the model canbe of similar complexity as an highly-integrated circuit. We are currently working on this topic.

– In section 4, we merely give some informal explanation on the computation power of our P system,it is correct, but indirect. We plan to provide a more formal and direct proof on the computationalpower. And It is anticipated that a more concise and efficient construct can be found making fulluse of the parallelism on links. After that, some specific computation instances may be used toexemplify the power of the system.

References

1. A. Alhazov, R. Freund, Gh. Paun: P systems with active membranes and two polarizations. In [10], 20–36.2. A. Alhazov, T. Ishdorj: Membrane operations in P systems with active membranes. Second Brainstorming

Week on Membrane Computing, Sevilla, Spain, February 2-7, 2004, 37–44.3. F. Bernardini, M. Gheorghe: Population P systems. Journal of Universal Computer Science, 10, 5 (2004),

509–539.

Page 175: Linqiang Pan, Gheorghe P‚aun, eds.psystems.disco.unimib.it/download/BICTA2006MC.pdfLinqiang Pan, Gheorghe P‚aun, eds. Pre-proceedings of the International Conference Bio-Inspired

Tissue P Systems with Parallel Rules on Channels 175

4. R. Freund, M. Oswald: A short note on analysing P systems with antiport rules. Bulletin of the EATCS,78 (2002), 231–236.

5. R. Freund, Gh. Paun, M.J. Perez-Jimenez: Tissue-like P systems with channel states. Theoretical ComputerScience, 330 (2005), 101–116.

6. C. Martın-vide, Gh. Paun, J. Pazos, A. Rodrıguez-Paton: Tissue P systems. Theoretical Computer Science,296 (2003), 295–326.

7. Gh. Paun: Computing with membranes. Journal of Computer and System Sciences, 61 (2000), 108–143.8. Gh. Paun: From cells to computers: Computing with membranes (P systems). BioSystems, 59 (2001),

139–158.9. Gh. Paun: Membrane Computing. An Introduction. Springer, Berlin, 2002.

10. Gh. Paun, A. Riscos-Nunez, A. Romero-Jimenez, F. Sancho-Caparrini, eds.: Proceedings of the SecondBrainstorming Week on Membrane Computing, Sevilla, February 2004, Technical Report 01/04 of ResearchGroup on Natural Computing, Sevilla University, Spain, 2004.