106
Gabriel CIOBANU, Gheorghe PĂUN (Editors) Proceedings of the 1 st International Workshop on Theory and Application of P Systems TAPS’05 Timişoara, Romania September 26 – 27, 2005 SYNASC’05, 7th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing Timişoara, September 25 - 29, 2005

Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

Gabriel CIOBANU, Gheorghe PĂUN (Editors)

Proceedings of the 1st International Workshop on

Theory and Application of P Systems

TAPS’05

Timişoara, Romania September 26 – 27, 2005

SYNASC’05, 7th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing

Timişoara, September 25 - 29, 2005

Page 2: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

ii

IeAT Technical Report 05-11

Page 3: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

Foreword

The present volume contains the papers presented at the first workshopon Theory and Applications of P Systems (TAPS), held in Timisoara onSeptember 26 and 27 of September 2005, as an event associated with the7th edition of the SYNASC conference.

The workshop is intended to open a series of similar meetings devotedparticularly to applications and implementations of membrane computing(P systems). This is fully possible now, at seven years since the researchin membrane computing was initiated, because multiset processing in thecompartmentalized framework provided by cell-like or tissue-like membranestructures used to be a widely applicable modelling technique, complement-ing classic techniques (mostly based on systems of differential equations)in various areas, such as biology, medicine, economics, linguistics, com-puter science (computer graphics, cryptography, approximate solutions tooptimization problems, etc.). A series of applications in all these domainscan be found in the recent volume Applications of Membrane Computing

(Springer-Verlag, Berlin, 2005), edited by G. Ciobanu, Gh. Paun, M.J.Perez-Jimenez. Thus, TAPS (with emphasis on A) can become the thirdannual meeting devoted to membrane computing, together with the alreadytraditional Workshop on Membrane Computing, WMC (Curtea de Arges,Romania, in 2000, 2001, 2002, Tarragona, Spain, in 2003, Milano, Italy,in 2004, Vienna, Austria, in 2005, with WMC7 to be held in Leiden, TheNetherlands, in July 2006), and Brainstorming Week on Membrane Comput-

ing (Tarragona in 2003, Sevilla, Spain, in 2004 and 2005, and again Sevillain February 2006). In this spectrum of membrane computing events, TAPScould become a place where new speakers, particularly PhD students, areencouraged to present their work to a receptive and friendly audience.

This workshop confirms the fact that membrane computing is afast “emerging research front in computer science”, as it was appreci-ated by Thomson Institute for Scientific Information, ISI, in 2003 (seehttp://esi-topics.com). Details about all the meetings devoted to mem-brane computing, including pre-proceedings volumes and full bibliography,

iii

Page 4: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

can be found at the website http://psystems.disco.unimib.it, organizedunder the auspices of European Molecular Computing Consortium, EMCC.

Each paper submitted to TAPS was refereed by at least three membersof the program committee, and the accepted papers were included in thevolume after they were revised by the authors according to the respectivereports. We express our gratitude to the referees for their very good work,and to the authors for preparing carefully their papers. A selection of thepapers, also improved according to the discussions held during the workshop,will be considered for publication in an international journal.

We would like to thank the organizers from Timisoara for their work inpreparing this meeting, and in making everything running smoothly.

The workshop – including the publication of the present volume – wassupported by IeAT, the Research Institute e-Austria of Timisoara. We grate-fully acknowledge this support.

Gabriel Ciobanu and Gheorghe Paun, editorsIasi and Timisoara, September 2005

iv

Page 5: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

v

Table of Contents

Invited Talk

Membrane computing. Basic ideas, results, applications ………………………………………….... Gheorghe Păun

1

Regular Papers

One and Two Polarizations, Membrane Creation and Objects Complexity in P Systems………... A. Alhazov, R. Freund, A. Riscos-Nunez

9

Could P Systems Model Energy-Sensing Behavior in Bacteria?..................................................... I. Ardelean

19

Modelling Parallel Phenomena in Conversations with P Systems………………………............... G. Bel Enguix, D. Jimenez Lopez

27

On P Systems with Bounded Parallelism………………………………………………………….. F. Bernardini, F. J. Romero-Campero, M. Gheorghe, M. J. Perez-Jimenez, M. Margenstern, S. Verlan, N. Krasnogor

31

Symbolic Representations of Biological Oscillations…………………………………………….. L. Bianco, V. Manca, S. Zorzan

37

A Hardware Circuit for Selecting Active Rules in Transition P Systems………………................ L. Fernandez, V.J. Martinez, F. Arroyo, L.F. Mingo

45

P Colonies Working in the Maximally Parallel and in the Sequential Mode……………………... R. Freund, M. Oswald

49

A Simulator and an Evolution Program for Conformon-P Systems………………………………. P. Frisco, R. Gibson

57

Characterizing Tractability with Membrane Creation…………………………………………….. A. Gutierrez-Naranjo, M. J. Perez-Jimenez, A. Riscos-Nunez, F. J. Romero-Campero

61

P Systems Generating 3D Rectangular Picture Languages……………………………….............. S.Hemalatha, K.S.Dersanambika, K.G.Subramanian, C. Sri Hari Nagore

69

On Symport/Antiport P Systems with One or Two Symbols……………………………………... O. Ibarra, S. Woodworth

75

Investigating Local Evolutions in Dynamical Probabilistic P Systems…………………................ D. Pescini, D. Besozzi, G. Mauri

83

Simulation of Continuous-time P Systems using Descriptive Rewriting Timed Petri Nets………. A. Profir, E. Gutuleac, E. Boian

91

On Generating Trees by P Systems with Active Membranes……………………………………... R. Rama, H. Ramesh

95

Page 6: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

vi

Page 7: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

vii

TAPS’05

Workshop on Theory and Applications of P-Systems

September 26 - 27, 2005, Timişoara, Romania

Workshop Chair:

Gabriel Ciobanu - Research Institute e-Austria of Timişoara, and Romanian Academy, Institute of Computer Science, Iaşi

Program Committee:

Gabriel Ciobanu, Romania

Erzsebet Csuhaj-Varju, Hungary

Rudolf Freund, Austria

Marian Gheorghe, UK

Jean-Louis Giavitto, France

Oscar Ibarra , USA

Vincenzo Manca, Italy

Gheorghe Paun, Spain and Romania

Mario J. Perez-Jimenez, Spain Acknowledgments

The program committee thanks to Dorel Lucanu (Romania) and Sara Woodworth (USA) for their assistance in evaluating the submissions.

Page 8: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

viii

Page 9: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

1

Membrane Computing:Basic Ideas, Results, and Applications

Gheorghe PaunInstitute of Mathematics of the Romanian AcademyPO Box 1-764, 7014700 Bucuresti, Romania, and

Research Group on Natural ComputingDepartment of Computer Science and Artificial Intelligence

University of SevillaAvda. Reina Mercedes s/n, 41012 Sevilla, Spain

E-mail: [email protected], [email protected]

Abstract— This is a quick introduction to membrane com-puting, presenting the basic ideas (mainly related to cell-like Psystems with symbol objects), some results (concerning especiallythe computing power and the efficiency – the possibility of solvingcomputationally hard problems, such as NP-complete problems,in a feasible time), the main areas of application (with a fewdetails concerning the applications in biology and medicine), aswell as some research topics which seem to be of interest for thenear future.

I. THE THREE MAIN TYPES OF P SYSTEMS

Membrane computing is a branch of natural computingwhich abstracts computing models from the structure and thefunctioning of living cells, as well as from the organizationof cells in tissues or other higher order structures. Thus,the initial goal of membrane computing (see [26]) was tolearn from the biology of the cell something possibly usefulto computer science, and the area fastly developed in thisdirection – see details (at the level of the spring of 2002) inthe monograph [27], with recent developments available at thewebsite [37]. Several classes of computing models (called Psystems) were defined in this context, inspired from biologicalfacts or motivated from mathematical or computer sciencepoints of view.

There are in this moment three main types of P systems: (i)cell-like P systems, (ii) tissue-like P systems, and (iii) neural-like P systems.

The first type imitates the (eukaryotic) cell, and its basic in-gredient is the membrane structure, a hierarchical arrangementof membranes (understood as three dimensional vesicles),delimiting compartments where multisets of symbol objectsare placed; rules for evolving these multisets as well as themembranes are provided, also localized, acting in specifiedcompartments or on specified membranes. The objects not onlyevolve, but they also pass through membranes (we say thatthey are “communicated” among compartments). The rulescan have several forms, and their use can be controlled invarious ways: promoters, inhibitors, priorities, etc.

In tissue-like P systems, several one-membrane cells areconsidered as evolving in a common environment. They con-tain multisets of objects, while also the environment contains

objects. Certain cells can communicate directly (channelsare provided between them), but all cells can communicatethrough the environment. The channels can be given in ad-vance or they can be dynamically established – this latter caseappears in so-called population P systems [7].

Finally, the neural-like P systems are similar to tissue-like Psystems in the fact that the cells are placed in the nodes of anarbitrary graph and they contain multisets of objects, but theyalso have a state which controls the evolution. Some furtherfeatures inspired from the way the neurons are linked in thebrain are also considered.

The cell-like P systems were introduced first and theirtheory is now well developed; tissue-like P systems have alsoattracted a considerable interest, but the neural-like systemsstill waits for a serious investigation (and we are quite opti-mistic in what concerns the results which can be obtained inthis framework; the brain structure and functioning, as knownor supposed to be known today, can suggest many ingredientsof a computing model which can then have nice propertiesand unexpected applications).

Thus, the more careful investigation of neural-like P sys-tems, starting with adapting the present definition (see [27])to a deeper neurology knowledge, is a research topic whichdeserves to be emphasized.

In what follows, in order to let the reader having a flavourof membrane computing, we will only discuss cell-like Psystems. We start by an informal presentation of the basicingredients, then we briefly discuss the two main types of re-sults, computational universality and computational efficiency,then we present the areas of applications, with a few detailsabout the applications in biology/medicine.

II. CELL-LIKE P SYSTEMS; AN INFORMAL PRESENTATION

Because from now on we only consider cell-like P systems,we will simply call them P systems.

In short, such a system consists of a hierarchical arrange-ment of membranes, which delimit compartments, where mul-tisets (sets with multiplicities associated with their elements)of abstract objects are placed. These objects correspond to thechemicals from the compartments of a cell; these chemicals

Page 10: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

2

swim in water (many of them are bound on membranes,but we do not consider this case here, although it startedrecently to be investigated, and a series of papers coveringthis case can be found in the literature), and their multiplicitymatters – that is why the data structure most adequate to thissituation is the multiset (a multiset can be seen as a stringmodulo permutation, that is why in membrane computing oneusually represents the multisets by strings). In what follows weconsider the objects unstructured, hence we represent them bysymbols from a given alphabet.

The objects evolve according to rules which are also asso-ciated with the regions. The rules say both how the objectsare changed and how they can be moved (communicated)across membranes. There also are rules which only moveobjects across membranes, as well as rules for evolving themembranes themselves (e.g., by destroying, creating, dividing,merging membranes). By using these rules, we can change theconfiguration of a system (the multisets from its compartmentsas well as the membrane structure); we say that we get atransition among system configurations.

The rules can be applied in many ways. The basic mode im-itates the biological way the chemical reactions are performed– in parallel, with the mathematical additional restriction tohave a maximal parallelism: one apply a bunch of rules whichis maximal, no further object can evolve at the same time byany rule. Besides this mode, there were considered severalothers: sequential (one rule is used in each step), boundedparallelism (the number of membranes to evolve and/or thenumber of rules to be used in any step is bounded in advance),minimal parallelism (in each compartment where a rule canbe used at least one rule is used). In all cases, a commonfeature is that the objects to evolve and the rules by which theyevolve are chosen in a non-deterministic manner. A sequenceof transitions forms a computation and with computationswhich halt (reach a configuration where no rule is applicable)we associate a result, for instance, in the form of the multisetof objects present in the halting configuration in a specifiedmembrane.

This way of using a P system, starting from an initialconfiguration and computing a number, is a grammar-like(generative) one. We can also work in an automata style: aninput is introduced in the system, for instance, in the form ofa number represented by the multiplicity of an object placedin a specified membrane, and we start computing; the inputnumber is accepted if and only if the computation halts. Acombination of the two modes leads to a transducer behavior:an input is introduced in the system (at the beginning, orsymbol by symbol during the computation) and also an outputis produced. In particular, we can have a decidability case,where the input encodes a decision problem, and the output isone of two special objects representing the answers yes andno to the problem.

Thus, we can address several types of problems in thisframework. The main two concerns the computing power of Psystems (working in the generative or accepting modes), andtheir usefulness in solving decision problems (making use ofthe inherent parallelism, it is expected that fast solutions toproblems which are hard to solve by sequential algorithms can

be found). From both these two points of view, the results arequite attractive: P systems with simple ingredients (numberof membranes, forms and sizes of rules, controls of usingthe rules) are Turing complete, while classes of P systemswith enhanced parallelism (e.g., having rules for membranedivision) can provide polynomial solutions to NP-complete(even PSPACE-complete) problems.

The generality of this approach is obvious. We start from thecell, but the abstract model deals with very general notions:membranes interpreted as separators of regions with filteringcapabilities, objects and rules assigned to regions; the basicdata structure is the multiset. Thus, membrane computingcan be interpreted as a bio-inspired framework for distributedparallel processing of multisets.

We close this section by stressing the basic similarities anddifferences between membrane computing and other areas ofnatural computing, such as neural computing, evolutionarycomputing, and DNA computing. All these areas start frombiological facts and abstract computing models. Neural andevolutionary computing are already implemented (rather suc-cessfuly, especially in the case of evolutionary computing) onthe usual computer. DNA computing has a bigger ambition,that of providing a new hardware, leading to bio-chips, to“wet computers”. For membrane computing it seems that themost realistic attempt for implementation is in silico (somesuccesses are already reported) rather than in vitro (no attemptwas made yet).

III. BASIC INGREDIENTS OF P SYSTEMS

Let us go into some more specific details – still remainingat an informal level.

As said above, we look to the cell structure and functioning,trying to get suggestions for an abstract computing model.The fundamental feature of a cell is its compartmentalizationthrough membranes. The membranes both define protected“reactors”, where specific biochemical reactions take place(starting with the cell membrane which delimit and protectthe cell from the environment), and contain proteins whichcatalyse reactions and, through protein channels, ensure thepassage of chemicals from a compartment of the cell to anothercompartment, as well as the communication with the environ-ment. Thus, the main ingredient of a P system is the membranestructure, a hierarchical arrangement of membranes, whichdelimit compartments; in these compartments there are objects,which evolve by means of rules which are also localized,assigned to compartments.

A large variety of P systems can be obtained based on theform of rules and the way they are used, but the membranestructure is common to all cell-lile P systems. A suggestiverepresentation of this notion is as in Figure 1. We distin-guish the external membrane (corresponding to the plasmamembrane and usually called the skin membrane) and severalinternal membranes (corresponding to the membranes presentin a cell, around the nucleus, in Golgi apparatus, vesicles, etc);a membrane without any other membrane inside it is said to beelementary. Each membrane determines a compartment, alsocalled region, the space delimited from above by it and from

Page 11: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

3

'

&

$

%

'

&

$

%

¾

½

»

¼¾½»¼

¶µ ³

¶µ³´

ÂÁ¿À

¶µ³´¶µ³´

­­­À

@@@R

¡¡

¡¡ª

membrane

AAU

skin elementary membranemembrane

region

environment environment

©©*HHHHHHHj

@@@R

1 2

3

45

6

7

8

9

Fig. 1. A membrane structure

below by the membranes placed directly inside, if any exists.The correspondence membrane–region is one-to-one, so thatwe identify by the same label a membrane and its associatedregion.

In the basic class of P systems, each region contains amultiset of symbol-objects, described by symbols from a givenalphabet.

The objects evolve by means of evolution rules, whichare also localized, associated with the regions of the mem-brane structure. The typical form of such a rule is cd →(a, here)(b, out)(b, in), with the following meaning: one copyof object c and one copy of object d react and the reactionproduces one copy of a and two copies of b; the newlyproduced copy of a remains in the same region (indicationhere), one of the copies of b exits the compartment, going tothe surrounding region (indication out) and the other entersone of the directly inner membranes (indication in). We saythat the objects a, b, b are communicated as indicated by thecommands associated with them in the right hand member ofthe rule. When an object exits a membrane, it will go to thesurrounding compartment; in the case of the skin membranethis is the environment, hence the object is “lost”, it nevercomes back into the system. If no inner membrane exists (thatis, the rule is associated with an elementary membrane), thenthe indication in cannot be followed, and the rule cannot beapplied.

A rule as above, with several objects in its left hand member,is said to be cooperative; a particular case is that of catalyticrules, of the form ca → cx, where a is an object and c isa catalyst, appearing only in such rules, never changing. Arule of the form a → x, where a is an object, is called non-cooperative.

The rules associated with a compartment are applied to theobjects from that compartment. The most investigated wayto use the rules is the maximally parallel one: all objectswhich can evolve by means of local rules should do it (weassign objects to rules, until no further assignment is possible).The used objects are “consumed”, the newly produced objectsare placed in the compartments of the membrane structureaccording to the communication commands assigned to them.

The rules to be used and the objects to evolve are chosen ina non-deterministic manner. In turn, all compartments of thesystem evolve at the same time, synchronously (a commonclock is assumed for all membranes). Thus, we have two layersof parallelism, one at the level of compartments and one at thelevel of the whole “cell”.

Note that evolution rules are stated in terms of namesof objects, they are “multiset rewriting rules”, while theirapplication/execution is done using copies of objects.

A membrane structure and the multisets of objects fromits compartments identify a configuration of a P system.By a non-deterministic maximally parallel use of rules assuggested above we pass to another configuration; such a stepis called a transition. A sequence of transitions constitutes acomputation. A computation is successful if it halts, it reachesa configuration where no rule can be applied to the existingobjects. With a halting computation we can associate a resultin various ways. The simplest possibility is to count the objectspresent in the halting configuration in a specified elementarymembrane; this is called internal output. We can also countthe objects which leave the system during the computation,and this is called external output. In both cases the result isa number. If we distinguish among different objects, then wecan have as the result a vector of natural numbers. The objectswhich leave the system can also be arranged in a sequenceaccording to the moments when they exit the skin membrane,and in this case the result is a string.

Because of the non-determinism of the application of rules,starting from an initial configuration, we can get severalsuccessful computations, hence several results. Thus, a Psystem computes (one also uses to say generates) a set ofnumbers, or a set of vectors of numbers, or a language.

As mentioned in the previous section, a P system can alsobe used in the accepting mode, with two variants: either aninput is introduced in the initial configuration, in the formof a number (the multiplicity of an object) or a vector (themultiplicities of several objects), and the number/vector isaccepted if the computation halts, or we record the sequence ofobjects which enter the system during a halting computation,and this sequence is the string accepted by that computation.A particular case is that of solving decision problems, whichwill be discussed further in Section VI.

IV. A LARGE NUMBER OF VARIANTS

Let us start by considering the possibility offered by theform of rules. In the systems described above, the symbolobjects were processed by multiset rewriting-like rules (someobjects are transformed into other objects, which have asso-ciated communication targets). Coming closer to the trans-membrane transfer of molecules, we can consider rules whichmodel the active passage of chemicals through membranes,by so-called uniport, symport, and antiport (see [1], [5] fordetails). Symport refers to the transport where two (or more)molecules pass together through a membrane in the samedirection, antiport refers to the transport where two (or more)molecules pass through a membrane simultaneously, but inopposite directions, while the case when a molecule does notneed a “partner” for a passage is referred to as uniport.

Page 12: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

4

In mathematical terms, we can consider object processingrules of the following forms: a symport rule (associated witha membrane i) is of the form (ab, in) or (ab, out), statingthat the objects a and b enter/exit together membrane i, whilean antiport rule is of the form (a, out; b, in), stating that,simultaneously, a exits and b enters membrane i; uniportcorresponds to a particular case of symport rules, of the form(a, in), (a, out). An obvious generalization is to consider sym-port rules (x, in), (x, out) and antiport rules (x, out; y, in)with x, y arbitrary multisets of objects.

Symport/antiport rules can be used alone, thus leading tosymport/antiport P systems, or in combination with multisetrewriting rules. In the first case, because by communication wedo not create new objects, we need a supply of objects in theenvironment, otherwise we are only able to handle a finite pop-ulation of objects, those provided in the initial multiset. Thus,the environment takes an active part in the computation, whichis an attractive feature of this class of P systems, together withthe conservation of objects, the mathematical elegance, thecomputational power, the direct biological inspiration. Alsothe case of evolving objects by means of multiset rewritingrules and communicating by symport/antiport rules leads to arather interesting class of P systems, the so-called evolution-communication P systems introduced in [9].

A more general form of rules, covering both multisetrewriting and symport/antiport rules, is that considered in [8]:u[

iv → u′[

iv′, where u, v are multisets of objects and i is a

membrane, specifies the fact that the multiset u placed outsidemembrane i and multiset v placed inside membrane i evolvesimultaneously into multisets u′, v′, respectively. Such rulesare very powerful, because they have a high degree of context-sensitivity.

Recently, efforts are made to also take into considerationsthe fact that the cell biochemistry is controlled in a largeextent by the proteins embedded in the membranes. Two recentpapers dealing with this topic are [10], [25]. For instance, inthe second paper, rules of the form a[

ip|b → a′[

ip′|b′ are

proposed, where a, a′, b, b′ are objects, p, p′ are proteins, and[ip| is a notation of the fact that p is placed on membrane i;

several restrictions are considered, for instance, with p = p′,and/or a = b′, b = a′, etc.

We can then pass to rules which handle not only objects,but also membranes. There is a large list of suggestionscomming from biology: membranes can be broken (and thecontents remains free in the surrounding region), divided(with the replication of the contents), their contents can bemerged or separated according to given criteria; then, thereare operations like exocytosys and endocytosis/phagocytosis,budding, matting, gemmating (sending vesicles at specifieddestinations), and so on and so forth. These last rules ensuresthat not only the multisets of objects evolve, but also themembrane structure of a P system.

Many possibilities arise in what concerns the way the rulesare used. More precisely, the non-determinism of choosingthe rules to apply can be decreased in various ways: using apriority among rules (a partial order relation), using promoters(objects which should be present in order to apply a rule) orinhibitors (objects which should not be present), controlling

the permeability of membranes (some rules can increase thepermeability of the membrane where they are used, other rulescan decrease the permeability; a rule which asks for sendingan object across a membrane which is not permeable cannotbe applied, and in this way the rules can influence the waythe next rules are chosen).

Then, we can use the rules in the maximally parallelmanner, but also in other ways: sequentially (one rule in thewhole system, or in each region), with a bounded parallelism(at least k or exactly k rules in the whole system or ineach region), with a minimal parallelism (at least one ruleis used in each region where a rule can be used). Thesestrategies of applying the rules are biologically inspired butmathematically oriented; when using P systems as models ofbiological systems/processes, we have to use more realisticfeatures, in general, of a numerical nature (e.g., reactionrates, probabilities), computed dynamically, depending on thecurrent population of objects in the system.

We do not give here a formal definition of a P system.The reader interested in mathematical and bibliographicaldetails can consult the mentioned monograph [27], as wellas the relevant papers from the bibliography from [37]. Ofcourse, when presenting a P system we have to specify:the alphabet of objects (a usual finite non-empty alphabetof abstract symbols identifying the objects), the membranestructure (usually represented by a string of labelled matchingparentheses), the multisets of objects present in each regionof the system (represented by strings of symbol-objects), thesets of evolution rules associated with each region, possiblyalso the priority relation for each set of rules, as well as theindication about the way the output is defined. In the caseof symport/antiport systems, also the objects available in theenvironment should be specified.

V. COMPUTATIONAL COMPLETENESS

As we have mentioned before, many classes of P systems,combining various ingredients (as described above or similar)are able of simulating Turing machines, hence they are compu-tationally complete. Always, the proofs of results of this typeare constructive, and this have an important consequence fromthe computability point of view: there are universal (henceprogrammable) P systems. In short, starting from a universalTuring machine (or an equivalent universal device), we getan equivalent universal P system. Among others, this impliesthat in the case of Turing complete classes of P systems, thehierarchy on the number of membranes always collapses (atmost at the level of the universal P systems). Actually, thenumber of membranes sufficient in order to characterize thepower of Turing machines by means of P systems is alwaysrather small.

We only mention here three of the most interesting (typesof) universality results:

1) P systems with symbol-objects with catalytic rules, usingonly two catalysts and two membranes, are computation-ally universal, [13].

2) P systems with symport/antiport rules of a restricted size(example: three membranes, symport rules of weight 2,

Page 13: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

5

and no antiport rules, or three membranes and minimalsymport and antiport rules) are universal, [4].

3) P systems with symport/antiport rules (of arbitrary size),using only four membranes and only three objects, areuniversal, [28].

There are several results of the form of those mentioned inthe points 1 and 2 above, improvements or extensions of theseresults; details can be found in [14], as well as in papers fromthe present volume.

In particular, in a paper from [14] one proposes a newtype of research topic proposed instead of dealing with thenumber of membranes or of objects, or with the complexityof rules sufficient to reach universality, let us consider thenumber of rules as the complexity parameter to improve. Thisis much similar to the efforts of finding small universal Turingmachines, and the result from [35] looks spectacular – eightrules suffice (for the particular case of tissue P systems withstring-objects processed by splicing operations; the case ofother types of P systems remains as an interesting researchtopic).

We can conclude that the compartmental computation ina cell-like membrane structure (using various ways of com-municating among compartments) is rather powerful. The“computing cell” is a powerful “computer”.

Universality results were obtained also in the case of P sys-tems working in the accepting mode. An interesting problemappears in this case, because we can consider deterministicsystems. Most universalities were obtained in the deterministiccase, but there also are situations where the deterministicsystems are strictly less powerful than the non-deterministicones. This is proven in [18], where a class of P systems is alsoproduced for which the deterministic versus non-deterministicproblem is equivalent with the LBA problem.

The hierarchy on the number of membranes collapses inmany cases also for non-universal classes of P systems, [27],but there also are cases when “the number of membranematters”, to cite the title of [17], where two classes ofP systems were defined for which the hierarchies on thenumber of membranes are infinite. Results of the above twotypes (dealing with the determinism/non-determinism issue orproving infinite hierarchies on the number of membranes) canbe found in a series of other recent papers of O.H. Ibarra andhis co-workers.

VI. COMPUTATIONAL EFFICIENCY

The computational power (the “competence”) is only one ofthe important questions to be dealt with when defining a new(bio-inspired) computing model. The other fundamental ques-tion concerns the computing efficiency. Because P systems areparallel computing devices, it is expected that they can solvehard problems in an efficient manner – and this expectationis confirmed for systems provided with ways for producingan exponential workspace in a linear time. Three main suchbiologically inspired possibilities have been considered so farin the literature, and all of them were proven to lead topolynomial solutions to NP-complete problems.

These three ideas are membrane division, membrane cre-ation, and string replication. The standard problems addressed

in this framework were decidability problems, starting withSAT, the Hamiltonian Path problem, the Node Covering prob-lem, but also other types of problems were considered, suchas the problem of inverting one-way functions, or the Subset-sum and the Knapsack problems (note that the last two arenumerical problems, where the answer is not of the yes/notype, as in decidability problems). Details can be found in[27], [32], as well as in the web page from [37].

Roughly speaking, the framework for dealing with complex-ity matters is that of accepting P systems with input: a familyof P systems of a given type is constructed starting from agiven problem, and an instance of the problem is introducedas an input in such systems; working in a deterministicmode (or a confluent mode: some non-determinism is allowed,provided that the branching converges after a while to a uniqueconfiguration, or, in the weak confluent case, all computationshalt and all of them provide the same result), in a giventime one of the answers yes/no is obtained, in the form ofspecific objects sent to the environment. The family of systemsshould be constructed in a uniform mode by a Turing machine,working a polynomial time.

This direction of research is very active at the present mo-ment. More and more problems are considered, the membranecomputing complexity classes are refined, characterizationsof the P6=NP conjecture were obtained in this framework,improvements are looked for. Two important recent results inthis area are the following.

1) The family PSPACE is included in PMCD, the familyof problems which can be solved in polynomial timeby P systems with the possibility of dividing both ele-mentary and non-elementary membranes. The PSPACE-complete problem used in this proof was QSAT (see [34]for details).

2) The family P, of problems which can be solved inpolynomial time by deterministic Turing machines, is thesame with the family of problems which can be solved inpolynomial time by P systems with membrane division,without using polarizations, and without using mem-brane dissolution, [16]. The proof cannot be extendedto the case when membrane dissolution is used, whichpoints out to a surprising role played in this contextby the operation of membrane dissolution, never so farbelieved to be so powerful (from the efficiency point ofview). Furthermore, when both dissolution and divisionof non-elementary rules are used (but not polarizations),one can solve NP-complete problems in polynomialtime, which (unless if P = NP) implies that eitherdissolution or the fact that one divides non-elementarymembranes, or both together, make the difference be-tween efficiency and non-efficiency in this framework.

There are in this area a series of open problems, mainlyrelated to the borderline between efficiency (the possibility tosolve computationally hard problems in polynomial time) andnon-efficiency. From [36] we know that membrane divisionis necessary for efficiency. However, all constructions fromthe papers mentioned above about P systems using division ofelementary membranes use “polarized” membranes, marked

Page 14: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

6

with one of the three “electrical charges” +,−, 0. It wasrecently shown [2] that the number of polarizations canbe decreased to two, but it is an intriguing open problemwhether or not the polarizations can be completely removed. Asimilar borderline question concerns the fact that the systemsconstructed in [34] use division of non-elementary membranes,which is a rather powerful operation, because also the innermembranes are replicated; can this be avoided, thus solvingQSAT in polynomial time by using systems with division ofonly elementary membranes?

VII. APPLICATIONS

Finally, let us shortly discuss some applications of mem-brane computing – starting however with a general discussionabout the features of this area of research which make itattractive for applications in several disciplines, especially forbiology.

First, there are several keywords which are genuinely properto membrane computing and which are of interest for manyapplications: distribution (with the important system-part in-teraction, emergent behavior, non-linearly resulting from thecomposition of local behaviors), algorithmicity (hence easyprogrammability), scalability/extensibility (this is one of themain difficulties of using differential equations in biology),transparency (multiset rewriting rules are nothing else thanreaction equations as customarily used in chemistry and bio-chemistry), parallelism (a dream of computer science, a com-mon sense in biology), non-determinism, communication (withthe marvellous and still not completely understood way thelife coordinates the many processes taking place in a cell,in contrast with the costly way of coordinating/synchronizingcomputations in parallel electronic computing architectures,where the communication time become prohibitive with theincrease of the number of processors), and so on and so forth.

Then, for biology, besides the easy understanding of theformalism and the transparency of the (graphical and sym-bolic) representations, encouraging should be also the simpleobservation that membrane computing emerged as a bio-inspired research area, explicitly looking to the cell for find-ing computability models (though, not looking initially formodels of relevance for the biological research), hence it isjust natural to try to use these models in the study of thevery originating ground. This should be put in contrast withthe attempt to “force” models and tools developed in otherscientific areas, e.g., in physics, to cover biological facts,presumably of a genuinely different nature as that of the areafor which these models and tools were created and proven tobe adequate/useful.

Now, in what concerns the applications themselves reportedup to now, they are developed at various levels. In manycases, what is actually used is the language of membranecomputing, having in mind three dimensions of this aspect:(i) the long list of concepts either newly introduced, orrelated in a new manner in this area, (ii) the mathematicalformalism of membrane computing, and (iii) the graphicallanguage, the way to represent cell-like structures or tissue-like structures, together with the contents of the compartmentsand the associated evolution rules (the “evolution engine”).

However, this level of application/usefulness is only apreliminary, superficial one. The next level is to use tools,techniques, results of membrane computing, and here thereappears an important question: to which aim? Solving prob-lems already stated, e.g., by biologists, in other terms andanother framework, could be an impressive achievement, andthis is the most natural way to proceed – but not necessarilythe most efficient one, at least at the beginning. New tools cansuggest new problems, which either cannot be formulated ina previous framework (in plain language, as it is the case inbiology, whatever specialized the specific jargon is, or usingother tools, such as differential equations) or have no chanceto be solved in the previous framework.

Applications of all these types were reported in the literatureof membrane computing. As expected and as natural, mostapplications were carried out in biology, but also applicationsin computer graphics (where the compartmentalization seemsto add a significant efficiency to well-known techniques basedon L systems), linguistics (both as a representation languagefor various concepts related to language evolution, dialogue,semantics, and making use of the parallelism, in solving pars-ing problems in an efficient way), management (again, mainlyat the level of the formalism and the graphical language), indevising sorting and ranking algorithms, cryptography, approx-imate algorithms for optimization problems, etc. Applicationsof all these kinds – excepting the case of management, forwhich we refer to [6] and the references therein – can befound in [12].

These applications are usually based on experiments usingprograms for simulating/implementing P systems on usualcomputers, and there are already many such programs, moreand more elaborated (e.g., with better and better interfaces,which allow for the friendly interaction with the program).We avoid to plainly say that we have “implementations”of P systems, because of the inherent non-determinism andthe massive parallelism of the basic model, features whichcannot be implemented, at least in principle, on the usualelectronic computer – but which can be implemented on adedicated, reconfigurable, hardware, as done in [33], or on alocal network, as reported, e.g., in [11]. This does not meanthat simulations of P systems on usual computers are notuseful; actually, such programs were used in all biologicalapplications mentioned above, and can also have importantdidactic and research applications. An overview of membranecomputing software reported in literature (some programs areavailable in the web page [37]) can be found in [15].

As a typical example of an application in biology/medicine,let us briefly present a cancer-related research, the modellingof EGFR (epidermal growth factor receptor) signalling net-work from [31]. The EGFR has an important role in cellgrowth, survival, proliferation and differentiation, hence it isa key target for the development of anticancer therapies. Thesignaling network involved in EGFR activity is rather complex.In [31], a P system with three regions, 60 proteins, and 160reactions among these proteins is considered. The picture ofthe system is given in Figure 2, where both the membranes arethe reactions are indicated (the nucleus was not considered yet,but ongoing investigations will take it into account, hence one

Page 15: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

7

further region will be used). These reactions were expressed asmultiset rewriting rules, with reaction rates computed accord-ing to the law of mass action and to Michaelis law. The modelwas simulated by means of a CLIPS program developed bythe authors, and the evolution in time of various proteins wasgraphically represented. The results, proving the robustness ofthe EGFR signalling network, looks like those in Figures 3and 4, and they are in full accordance with biological data(e.g., from [19]) obtained experimentally. This proves that themodel is reliable, hence lab experiments can be replaced bycomputer experiments based on this model (and its supportingsoftware).

Fig. 2. The EGF signalling network

Another rather promising direction of application is thatproposed in [22]: distributed evolutionary computing-like al-gorithms using ingredients from membrane computing inorganizing the search of good solutions to hard optimizationproblems. T.Y. Nishida proposes and investigates a class ofsuch algorithms, called membrane algorithms, whose basicvariant is the following one: a (small) number of candidatesolutions to an optimization problem are placed in the regionsof a membrane structure of a linear shape (with the mem-branes embedded one in another one), together with local

0 10 20 30 40 50 600.00

0.04

0.08

0.12

0.16

0.20

0.24

0.28

0.32

time (s)

Concentration (nM)

100nM200nM300nM

Fig. 3. The EGF receptor activation by auto-phosphorylation (with a rapiddecay after a high peak in the first 5 seconds)

0 20 40 60 80 100 120 140 160 1800

1

2

3

4

5

time (s)

Concentration (nM)

100nM200nM300nM

Fig. 4. The evolution of the kinase MEK (proving a surprising robustnessof the signalling cascade)

sub-algorithms which can improve the local solutions; aftera (small) number of steps of local work, when the solutionsfrom each membrane are evolved, the best of them is sentto the immediately lower membrane and the worst is sent tothe immediately upper membrane (with exceptions to this rulein the innermost and the outermost membrane); in this way,the better solutions are moved down and the worst ones aremoved up in the membrane hierarchy; this process is iterateduntil either a specified number of steps is reached, or noimprovement of the best solution is obtained for a specifiednumber of steps. When halting, the central membrane providesthe answer, the solution to the problem. There are severalvariants, in terms of the number of membranes, with theinitial solutions generated by a first generation of membranealgorithms (thus working in a two-stage manner, which provesto be very efficient), with the possibility to create or to destroycertain membranes during the computation, etc.

T.Y. Nishida has checked this strategy for the travelling

Page 16: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

8

salesman problem (find the shortest path which visits all nodesof a graph, passing exactly once through each node), andthe results were more than encouraging. Known benchmarkproblems were addressed and always the conclusions were thesame: at the beginning, the convergence is very fast, so that,after a small number of steps we get a solution which is almostthe best which can be provided by the algorithm, irrespectivehow much we continue to work; the number of membranes israther influential on the quality of the solution, but, dependingalso on the dimension of the problem (the number of nodes inthe graph), 50 to 100 membranes are sufficient for obtaininga solution which is better than that provided by simulatedannealing; the method is reliable, both the average qualityand the worst solutions were good enough and always betterthan the average and the worst solutions given by simulatedannealing. Recent developments can be found in [23] and [24].

This direction of research is rather new, but it has aclear practical interest, so further efforts are necessary, e.g.,checking the usefulness of this approach for other problems,comparing this method with other methods, looking for moresophisticated membrane algorithms. Trusting the cell, we arequite optimistic with this kind of strategies.

VIII. FINAL REMARKS

At almost seven years since the research in this area wasinitiated [26], membrane computing is a powerful branch ofnatural computing, well developed at the mathematical andtheoretical computer science level, and already proved to bea useful tool for applications in several areas, in particular,in biology/medicine. The present paper is just an invitation tothis area, only briefly and informally discussing some basicideas and results, and indicating some bibliographical sourcesfor further details. In particular, the interested reader can finda wealth of information at the website [37], e.g., about recentdevelopments, in many cases not available in a published form– and not mentioned here.

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] A. Alhazov, R. Freund, Gh. Paun: P systems with active membranes andtwo polarizations. In [29], 20–36.

[3] A. Alhazov, R. Freund, Y. Rogozhin: Computational power of sym-port/antiport: history, advances, and open problems. In [14], 44–78.

[4] A. Alhazov, M. Margenstern, V. Rogozhin, Y. Rogozhin, S. Verlan:Communicative P systems with minimal cooperation. In [21], 162–178.

[5] I.I. Ardelean: The relevance of biomembranes for P systems. Funda-menta Informaticae, 49, 1–3 (2002), 35–43.

[6] J. Bartosik: Paun’s systems in modeling of human resource management.Proc. Second Conf. Tools and Methods of Data Transformation, WSUKielce, 2004.

[7] F. Bernardini, M. Gheorghe: Population P systems. Journal of UniversalComputer Science, 10, 5 (2004), 509–539.

[8] F. Bernardini, V. Manca: P systems with boundary rules. In [30], 107–118.

[9] M. Cavaliere: Evolution-communication P systems. In [30], 134–145.[10] M. Cavaliere, A. Riscos-Nunez, R. Brijder, G. Rozenberg: Membrane

systems with marked membranes. Manuscript, 2005.[11] G. Ciobanu, G. Wenyuan: A P system running on a cluster of computers.

In [20], 123–139.[12] G. Ciobanu, Gh. Paun, M.J. Perez-Jimenez, eds.: Applications of Mem-

brane Computing, Springer, Berlin, 2005.

[13] R. Freund, L. Kari, M. Oswald, P. Sosik: Computationally universalP systems without priorities: two catalysts are sufficient. TheoreticalComputer Sci., 330, 2 (2005), 251–266.

[14] R. Freund, G. Lojka, M. Oswald, Gh. Paun, eds.: Pre-Proceedings of the6th International Workshop on Membrane Computing, WMC6, ViennaTechnological Univ., 2005.

[15] M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, A. Riscos-Nunez: Avail-able membrane computing software. In [12], 411–438.

[16] M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, A. Riscos-Nunez, F.J.Romero-Campero: On the power of dissolution in P systems with activemembranes. In [14], 373–395.

[17] O.H. Ibarra: The number of membranes matters. In [20], 218–231.[18] O.H. Ibarra: On determinism versus nondeterminism in P systems.

Theoretical Computer Sci., 2005.[19] B.G. Klodenko et al.: Quantification of short term signalling by the

epidermal growth factor receptor. J. Biol. Chem., 274 (1999), 30169–30181.

[20] C. Martın-Vide, G. Mauri, Gh. Paun, G. Rozenberg, A. Salomaa, eds.:Membrane Computing. International Workshop, WMC2003, Tarragona,Spain, Revised Papers. Lecture Notes in Computer Science, 2933,Springer, Berlin, 2004.

[21] G. Mauri, Gh. Paun, M.J. Perez-Jimenez, G. Rozenberg, A. Salomaa,eds.: Membrane Computing. International Workshop WMC5, Milan,Italy, 2004. Revised Papers, Lecture Notes in Computer Science, 3365,Springer, Berlin, 2005.

[22] T.Y. Nishida: An application of P system: A new algorithm for NP-complete optimization problems. In Proceedings of the 8th World Multi-Conference on Systems, Cybernetics and Informatics (N. Callaos, et. al.,eds.), vol. V, 2004, 109–112.

[23] T.Y. Nishida: Membrane algorithms: Approximate algorithms for NP-complete optimization problems. In [12], 301–312.

[24] T.Y. Nishida: Membrane algorithm: An approximate algorithm for NP-complete optimization problems exploiting P systems. In [14], 26–43.

[25] A. Paun, B. Popa: P systems with proteins on membranes. Manuscript,2005.

[26] Gh. Paun: Computing with membranes. Journal of Computer and SystemSciences, 61, 1 (2000), 108–143 (and Turku Center for ComputerScience-TUCS Report 208, November 1998, www.tucs.fi).

[27] Gh. Paun: Membrane Computing: An Introduction. Springer, Berlin,2002.

[28] Gh. Paun, J. Pazos, M.J. Perez-Jimenez, A. Rodriguez-Paton: Sym-port/antiport P systems with three objects are universal. FundamentaInformaticae, 64, 1-4 (2005), 353–367.

[29] Gh. Paun, A. Riscos-Nunez, A. Romero-Jimenez, F. Sancho-Caparrini,eds.: Proceedings of the Second Brainstorming Week on MembraneComputing, Sevilla, February 2004. Technical Report 01/04 of ResearchGroup on Natural Computing, Sevilla University, Spain, 2004.

[30] Gh. Paun, G. Rozenberg, A. Salomaa, C. Zandron, eds.: MembraneComputing. International Workshop, WMC-CdeA 2002, Curtea de Arges,Romania, Revised Papers. Lecture Notes in Computer Science, 2597,Springer, Berlin, 2003.

[31] M.J. Perez–Jimenez, F.J. Romero–Campero: A study of the robustnessof the EGFR signalling cascade using continuous membrane systems.In Mechanisms, Symbols, and Models Underlying Cognition. FirstInternational Work-Conference on the Interplay between Natural andArtificial Computation, IWINAC 2005 (J. Mira, J.R. Alvarez, eds.),LNCS 3561, Springer, Berlin, 2005, 268–278.

[32] M.J. Perez–Jimenez, A. Romero–Jimenez, F. Sancho–Caparrini: Compu-tationally hard problems addressed through P systems. In [12], 313–346.

[33] B. Petreska, C. Teuscher: A hardware membrane system. In [20], 269–285.

[34] P. Sosik: The computational power of cell division in P dystems: Beatingdown parallel computers? Natural Computing, 2, 3 (2003), 287–298.

[35] S. Verlan, Y. Rogozhin: On the rule complexity of universal tissue Psystems. In [14], 510–516.

[36] C. Zandron, C. Ferretti, G. Mauri: Solving NP-complete problemsusing P systems with active membranes. In Unconventional Models ofComputation (I. Antoniou, C.S. Calude, M.J. Dinneen, eds.), Springer,London, 2000, 289–301.

[37] The Web Page of Membrane Computing: http://psystems.disco.unimib.it

Page 17: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

9

One and Two Polarizations, Membrane Creationand Objects Complexity in P Systems

Artiom Alhazov1,2, Rudolf Freund3 and Agustın Riscos-Nunez4

1 Research Group on Mathematical Linguistics, Rovira i Virgili UniversityPl. Imperial Tarraco 1, 43005 Tarragona, Spain

E-mail: [email protected] Institute of Mathematics and Computer Science, Academy of Sciences of Moldova

Str. Academiei 5, Chisinau, MD 2028, MoldovaE-mail: [email protected]

3 Faculty of Informatics, Vienna University of TechnologyFavoritenstr. 9, A–1040 Vienna, Austria

E-mail: [email protected] Research Group on Natural Computing

Department of Computer Science and Artificial Intelligence, University of SevillaAvda. Reina Mercedes s/n, 41012 Sevilla, Spain

E-mail: [email protected]

Abstract— We improve, by using register machines, someexisting universality results for specific models of P systems.P systems with membrane creation are known to generate allrecursively enumerable sets of vectors of non-negative integers,even when no region (except the environment) contains more thanone object of the same kind. We here show that they generateall recursively enumerable languages, and two membrane labelsare sufficient (the same result holds for accepting all recursivelyenumerable vectors of non-negative integers). Moreover, at mosttwo objects are present inside the system at any time in thegenerative case. Then we prove that 10+ m symbols are enoughto generate any recursively enumerable language over m symbols.

P systems with active membranes and without polarizationsare known to generate all recursively enumerable sets of vec-tors of non-negative integers. We show that they generate allrecursively enumerable languages, and four starting membraneswith three labels or seven starting membranes with two labels aresufficient. P systems with active membranes and two polarizationsare known to generate/accept all recursively enumerable sets ofvectors of non-negative integers, only using rewriting-like rulesand rules of sending objects out. We show that accepting can bedone by even deterministic systems. Finally, a number of remarksand open questions is presented.

I. INTRODUCTION

P systems with symbol objects is a theoretical framework ofdistributed parallel multiset processing, launched by Gh. Paunin 1998, see [6]. A systematic survey of the field can be foundin [7], and [9] contains a comprehensive bibliography.

The aim of this article is to improve descriptive complexityparameters or properties of a few universality results. Moreprecisely, we shall speak about object complexity (bounds inthe starting configuration, in any configuration, in the alphabet)and also about membrane complexity.

Let us denote the set of all recursively enumerable sets of(k-dimensional) vectors of non-negative integers by PsRE

(PsRE (k) , respectively), while the set of all recursively

enumerable languages (over a k-letter alphabet) is denoted byRE (RE (k) , respectively).

It was shown in [1] that P systems with membrane creationgenerate PsRE, even when every region (except the environ-ment) contains at most one object of every kind, but usingan unbounded number of membrane labels. We will showthat RE is generated using only two membrane labels andat most two objects present inside the system throughout anycomputation. The accepting case is considered, too, and againtwo membrane labels are enough. On the other hand, usingan unbounded membrane alphabet we can bound the symbolalphabet by 10+m objects, where m is the size of the outputalphabet.

We also know from [1] that P systems with active mem-branes without polarization generate PsRE, again workingwith an unbounded number of membranes. We will showthat RE is generated by P systems with four membranes andthree labels or seven membranes with two labels in the initialconfiguration.

As shown in [3], [2], P systems with two polarizationsand rules of types (a) – rewriting – and (c) – sending anobject out – generate PsRE using two membranes or acceptPsRE using one membrane. In this article we will show thatdeterministic systems of this kind with one membrane acceptPsRE.

II. DEFINITIONS

After some preliminary definitions, we recall basic facts ofregister machines and matrix grammars (without appearancechecking) and give the necessary definitions for the specificmodels of P systems considered in this paper.

Page 18: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

10

A. Preliminaries

The set of non-negative integers is denoted by N. Analphabet V is a finite non-empty set of abstract symbols. GivenV , the free monoid generated by V under the operation ofconcatenation is denoted by V ∗; the empty string is denotedby λ, and V ∗ − {λ} is denoted by V +. By |x| we denote thelength of the string x over V.

For more notions as well as basic results from the theoryof formal languages, the reader is referred to [4] and [8].

B. Register machines

A register machine is a construct M = (m,P, l0, lh) , wherem is the number of registers, P is a finite set of instructionsinjectively labelled with elements from a given set lab (M),l0 is the initial/start label, and lh is the final label.

The instructions are of the following forms:– l : (A (r) , l′, l′′)

Add 1 to the contents of register r and proceed to theinstruction (labelled with) l′ or l′′. (We say that we havean ADD instruction.)For deterministic register machines, we always have l′ =l′′.

– l : (S (r) , l′, l′′)If register r is not empty, then subtract 1 from its contentsand go to instruction l′, otherwise proceed to instructionl′′. (We say that we have a conditional SUB instruction.)

– lh : halt

Stop the machine. The final label lh is only assigned tothis instruction.

When considering the generation of languages, we use themodel of a register machine with output tape, which also usesa tape operation:

– l : (write (a) , l′′)Write symbol a on the output tape and go to instruc-tion l′′.

We then also specify the output alphabet T in the descriptionof the register machine with output tape, i.e., we write M =(m,T, P, l0, lh).

The following results are folklore (e.g., see [5]):

Proposition 1: Let L ⊆ Nm be a recursively enumerableset of (vectors of) non-negative integers. Then L can begenerated/accepted by a register machine/deterministic registermachine with at most m + 2 registers; moreover, at thebeginning/at the end of a computation, all registers are empty;the result/the input of a computation appears in the first m

registers.Let L ⊆ V ∗ be a recursively enumerable language. Then L

can be generated by a register machine with output tape with2 registers.

C. Matrix grammars

A context-free matrix grammar (without appearance check-ing) is a construct G = (N,T, S,M) where N and T aresets of non-terminal and terminal symbols, respectively, with

N ∩ T = ∅, S ∈ N is the start symbol, M is a finite setof matrices, M = {mi | 1 ≤ i ≤ n}, where the matrices mi

are sequences of the form mi = (mi,1, · · · ,mi,ni), ni ≥ 1,

1 ≤ i ≤ n, and the mi,j , 1 ≤ j ≤ ni, 1 ≤ i ≤ n, arecontext-free productions over (N,T ).

For mi = (mi,1, · · · ,mi,ni) and v, w ∈ (N ∪ T )

∗ wedefine v =⇒mi

w if and only if there are w0, w1, · · · , wni∈

(N ∪ T )∗ such that w0 = v, wni

= w, and for each j,

1 ≤ j ≤ ni, wj is the result of the application of mi,j towj−1. The language generated by G is

L (G) = {w ∈ T ∗ | S =⇒mi1w1 · · · =⇒mik

wk,

wk = w, wj ∈ (N ∪ T )∗

,

mij∈ M for 1 ≤ j ≤ k, k ≥ 1}.

The family of languages generated by matrix grammarswithout appearance checking is denoted by MAT λ. It isknown that for the family of Parikh sets of languages generatedby matrix grammars PsMAT λ we have PsMAT λ ⊂ PsRE.Further details about matrix grammars can be found in [4] andin [8]. We only mention that the power of matrix grammars isnot decreased if we only work with matrix grammars in thef-binary normal form where N is the disjoint union of N1, N2,

and {S, f} and M contains rules of the following forms:1) (S → XA), with X ∈ N1, A ∈ N2;2) (X → Y,A → x), with X ∈ N1, Y ∈ N1 ∪ {f} ,

A ∈ N2, and x ∈ (N2 ∪ T )∗, |x| ≤ 2;3) (f → λ).

Moreover, there is only one matrix of type 1 and only onematrix of type 3, which is only used in the last step of aderivation yielding a terminal result.

D. P Systems

The first model of P systems we consider is that of Psystems with non-cooperative multiset-rewriting rules (ncoo)with specifying targets (tar), also using membrane creation(mcre) and membrane dissolution (δ) possibilities. Such asystem (of initial degree m ≥ 1) is of the form

Π = (O,H, µ,w1, · · · , wm, R1, · · · , Rn)

where O is the alphabet of objects, H is the set of labels formembranes (we assume here that H contains n labels), µ isthe initial membrane structure, consisting of m membranes la-belled (not necessarily in a one-to-one manner) with elementsof H , w1, · · · , wm are strings over O representing the multisetsof objects present in the m compartments (also called regions)of µ, and R1, · · · , Rn are the (finite) sets of rules associatedwith the n labels from H . These rules can be of the forms(1) a → v and (2) a → [

ib ]

iwhere v ∈ O∗, a, b ∈ O,

i ∈ H , and either v ∈ (O× tar)∗ or v ∈ (O× tar)∗ {δ}, withtar = {here, out} ∪ {inj | j ∈ H}. The presence of δ on theright-hand side of a rule means that the application of the ruleleads to the dissolution of the membrane.

The meaning of a rule of type (1) is that the object a fromthe region associated with the rule “reacts”, and as a result theobjects specified by v are produced. The objects from v haveassociated target commands, of the forms here, out, inj , whichspecify where the object should be placed: here means that the

Page 19: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

11

object remains in the region where it is produced, inj meansthat it has to go to the membrane j, provided that it is directlyinside the membrane where the rule is applied (otherwise therule cannot be used), and out indicates that the object shouldexit the current membrane, going to the surrounding region –which is the environment in the case of the skin membraneof the system. In general, the indication here is not explicitlywritten. If the special symbol δ is present, this means thatafter using the rule the membrane is dissolved, and all itscontents, objects and membranes alike, become elements ofthe surrounding region. The skin membrane is never dissolved.A rule a → [

ib ]

iof type (2) means that object a produces a

new membrane, with label i, containing the object b.Knowing the label of the membrane, we also know the rules

associated with it. We recall that the number of membranelabels (i.e., kinds of membranes) is n and the rules areassociated to the membrane labels, while the number of mem-branes initially is m and can change during the computation.The rules are used in the non-deterministic (the objects andthe rules are chosen non-deterministically) maximally parallelway (no further object can evolve after having chosen theobjects for the rules), thus obtaining transitions between aconfiguration of the system to another one.

P systems with active membranes with k polarizations(activek) are constructs

Π = (O,H,E, µ,w1, · · · , wm, R)

with the components O,H, µ,w1, · · · , wm defined in the sameway as above, with membranes of µ also having associatedpolarizations from E (having cardinality k) and with the rulesfrom R of the following forms: (a): [ a → v ]

e

h– rewriting-

like, (b): a[ ]e

h→ [ b ]

e′

hand (c): [ a ]

e

h→ [ ]

e′

hb

– bring an object inside the membrane/send an object outof the membrane (possibly changing its polarization), (d):[ a ]

e

h→ b – dissolve the membrane, producing another

object (the contents of the dissolved membrane is releasedin the surrounding region), (e): [ a ]

e

h→ [ b ]

e′

h[ c ]

e′′

h

– membrane division, where two membranes with the samelabel (but possibly different polarizations) are produced, eachcontaining a new object (all other objects are duplicated). Inall cases, a, b, c ∈ O, v ∈ O∗, e, e′, e′′ ∈ E and h ∈ H .

The rules of type (a) are applied in the maximally parallelway, while at most one rule of types (b), (c), (d), (e) can beapplied for each membrane at any step of the computation.If we have only one polarization, we omit specifying it (andin the literature, the subscript 0 then is usually added to thetypes of rules defined above, thus yielding (a0), etc.).

In both models, when a configuration is reached where norule can be applied, the computation stops, and the multiplicityof objects sent into environment during the computation issaid to be computed by the system along that computation.We denote by Ps(Π) the set of vectors generated in this way(by means of all computations) by a system Π. If we takeinto account the sequence of symbols as they are sent out intothe environment (when two or more objects leave the systemat the same moment, then all permutations of these objects

are considered), then we obtain the string language generatedby Π which is denoted by L (Π) . When considering Π as anaccepting system for set of vectors, we put the input multisetinto the skin membrane and accept by halting computations.

We denote the resulting families generated by such Psystems by XOn1,n2,n3

Pn4,n5,n6F where (1) X is either

L for languages or Ps for sets of vectors of non-negativeintegers; we add the subscript a when considering acceptingsystems; (2) F is the list of features used in the model(e.g., we consider (ncoo, tar,mcre, δ), (active1, a, b, c, d, e),and (active2, a, c)); (3) the numbers n4, n5, n6 represent thebounds on the starting number of membranes, the maximalnumber of membranes in any computation, and the numberof membrane labels, ∗ representing the absence of a bound(if all three numbers are ∗, then we simply omit them); (4)the numbers n1, n2, n3 have the same meaning, but for theobjects inside the system; the middle parameter, n2 or n5, canbe replaced by n′

2/n2 or n′

5/n5 where the primed numbersindicate the bounds on the number of objects or membranesever present in the system during halting computations only,thus refining this complexity measure.

III. MEMBRANE CREATION

Figure 1 describes the membrane structure used in the firsttheorems.

Th. 2 1©©1¡2 @2· · ·︸︷︷︸n1

HH2¡2 @2· · ·︸︷︷︸n2

Th. 3 1©©2¡2 @2· · ·︸︷︷︸n1

HH1©©2¡2 @2· · ·︸︷︷︸n2

. . . 1©© HH12¡2 @2· · ·︸︷︷︸ndTh. 4

s¡@· · ·︸︷︷︸

nonterminals

Th. 5,6 s©©©©1¡

¡1· · ·︸︷︷︸n1

@@2

HHHH2· · ·︸︷︷︸n2

»»»»»»ll′

Fig. 1. Membrane structures for membrane creation proofs

a) Generating: The first theorem shows how recursivelyenumerable languages can be generated by P systems with asmall number of objects inside the system and a small numberof membrane labels.

Theorem 2: LO1,2,∗P1,∗,2(ncoo, tar,mcre, δ) = RE.

Proof: Due to Proposition 1, we construct a P systemsimulating a register machine M = (2, T, P, l0, lh) withoutput tape and two registers; P− denotes the set of all SUBinstruction labels.

Π =(O,H, [

1]1, w1, R1, R2

),

O = T ∪ {a1, a2, C1, C2, g0, g1, g2, t}∪ P ∪ {l1, l2, l3, l4, l5, l6, l7 | l ∈ P−},

H = {1, 2} ,

w1 = g0,

R1 = R1,I ∪ R1,A ∪ R1,S ∪ R1,D ∪ R1,Z ∪ R1,O,

R2 = R2,I ∪ R2,A ∪ R2,S ∪ R2,D ∪ R2,Z .

For clarity, the rules are grouped in categories (initialization,add, subtract, decrement case, zero case, output).

Initialization:

Page 20: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

12

R1,I = {g0 → [2 g0 ]2, g1 → [1 g2 ]1, g2 → (l0)out},R2,I = {g0 → (g1)out},

Output:R1,O = {l → l′aout | a ∈ T,

l : (write(a), l′) ∈ P},Add:R1,A = {l → l′ (C2)ini

, l → l′′ (C2)ini

| l : (A(i), l′, l′′) ∈ P, i ∈ {1, 2}}∪ {C2 → [2 t ]2, t → λ}

R2,A = {C2 → [2

t ]2, t → λ},

Subtract:R1,S = {l → (l1C1)ini

| l : (S(i), l′, l′′) ∈ P, i ∈ {1, 2}},∪ {C1 → [

1t ]

1}

∪ {l1 → (l2)in2, | l : (S(1), l′, l′′) ∈ P},

R2,S = {C1 → [1 t ]1}∪ {l1 → (l2)in2

| l : (S(2), l′, l′′) ∈ P},Decrement case:R1,D = {l4 → l5δ | l ∈ P−}

∪ {l3 → (l4)in1, l5 → (l′)out

| l : (S(1), l′, l′′ ∈ P )},R2,D = {l2 → l3δ | l ∈ P−}

∪ {l3 → (l4)in1, l5 → (l′)out

| l : (S(2), l′, l′′ ∈ P )},Zero case:R1,Z = {l6 → l7δ | l ∈ P−}

∪ {l1 → (l6)in1, l7 → (l′′)out

| l : (S(1), l′, l′′ ∈ P )},R2,Z = {l1 → (l6)in1

, l7 → (l′′)out

| l : (S(2), l′, l′′ ∈ P )}.

Initially, by means of the auxiliary objects gi, we createtwo membranes inside the skin region, labelled by 1 and 2,respectively. These membranes will be referred to as cluster-membranes (because they will contain inside them a numberof elementary membranes). We finish the initialization phaseby generating an object l0 in the skin region.

The values of the two registers i, i ∈ {1, 2}, are representedby the number of elementary membranes labelled by 2 thatoccur inside the corresponding cluster-membrane i. The dutyof the object Ci is to create membrane i. Object t is not neededfor the computation, it is only used to keep the usual form ofmembrane creation rules and immediately erased after havingbeen created.

Writing an output symbol a ∈ T is done by a non-cooperative rule changing the instruction label and producing asymbol a that is immediately sent out. To increment a register,a membrane labelled by 2 is created inside the correspondingcluster-membrane.

In order to simulate a subtraction on register i we send theobjects l1 and C1 into the cluster-membrane i and then proceedin the following way: while creating a membrane with label1, object l1 tries to enter in some membrane with label 2 asl2. If such a membrane exists (i.e., register i is not empty),then l2 changes to l3 and dissolves the membrane, thus beingspilled back into the cluster-membrane. Before proceeding tothe next label, we have to get rid of the auxiliary membrane1 that was created inside the cluster-membrane by object C1.To this aim, l3 enters into membrane 1 as l4 and dissolves it,

thereby changing to l5. Finally, l5 sends an object l′ out tothe skin region. As an overall result, l has been replaced by l′

and the number of membranes with label 2 inside the cluster-membrane i has been reduced by 1. If, on the other hand, nomembrane with label 2 exists in the cluster membrane, then l1waits for one step and then enters the newly created membrane1 as l6. Immediately afterwards, it changes to l7 and dissolvesthe membrane. Finally, l7 sends out an object l′′ into the skinregion. As an overall result, in the absence of membranes withlabel 2 inside the cluster-membrane i, l has been replaced byl′′.

It is easy to see that inside the system there can neverbe more than one copy of the same object. In fact, the totalnumber of objects inside the system never exceeds two (andit can only be two after the first step of an ADD or a SUBinstruction).

b) Accepting: Notice that the simulation of the registermachine instructions in Theorem 2 is deterministic (the non-determinism arises from the non-determinism of the registermachine program itself, not from the simulation). For the caseof accepting sets of vectors in a deterministic way, we alsospecify the cardinality of the input alphabet, i.e., the numberof components in the (Parikh) vectors.

Theorem 3: DPsa(m)OP1,∗,2(ncoo, tar,mcre, δ) =PsRE(m).

Proof: Given a recursively enumerable set of vectorsof non-negative integers, we now simulate a register machineM = (m + 2, P, l0, lh) with m + 2 registers (see Proposi-tion 1); the input vector is represented in the skin membraneby the corresponding numbers of symbols (ai, i), 1 ≤ i ≤ m,for the i-th component.

Π =(O,H, [

1]1, w1, R1, R2

),

O = {(ai, j) | 1 ≤ i ≤ m + 2, 1 ≤ j ≤ i}∪ {C1, C2, t} ∪ {gi | 0 ≤ i ≤ 4(m + 2)}∪ P ∪ {l1, l2, l3, l4, l5, l6, l7 | l ∈ P−},∪ {(l, k, j) | l ∈ P−,

0 ≤ k ≤ 2, 1 ≤ j ≤ m + 2}H = {1, 2} ,

w1 = g0,

R1 = R1,I ∪ R1,A ∪ R1,S ∪ R1,D ∪ R1,Z ,

R2 = R2,I ∪ R2,A ∪ R2,S ∪ R2,D ∪ R2,Z .

Like in the previous theorem, we list the rules by categories(initialization, add, subtract, decrement case, zero case). Weagain start with the object g0 which now starts the creation

of the membrane structure(

[1

[2

]2

)m+2(

]1

)m+2

, where

each membrane with label 2 (cluster membrane) correspondsto a register. In parallel, the input objects enter the corre-sponding membranes and become membranes with label 2,see Figure 1.

Initialization:

Page 21: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

13

R1,I = {g3i → [2 g3i+1 ]2, g3i+2 → [1 g3i+3 ]1,g3(m+2)+i →

(g3(m+2)+i+1

)

out

| 0 ≤ i ≤ m + 1}∪ {g4(m+2) → l0}∪ {(ai, j) → (ai, j − 1)

in1| 1 ≤ i ≤ m,

2 ≤ j ≤ i}{(ai, 1) → (C2)in2

| 1 ≤ i ≤ m},R2,I = {g3i+1 → (g3i+2)out

| 0 ≤ i ≤ m + 1}∪ {C2 → [

2t ]

2, t → λ}

Then we perform a deterministic simulation of the instruc-tions in the program of the deterministic accepting registermachine M . We now list the rules for ADD instructions(registers m + 1, m + 2 for the simulation of the workingregisters; observe that for the input initialization of the regis-ters i, 1 ≤ i ≤ m, similar rules for the corresponding symbols(ai, i) are used):

Add:R1,A = {l → l′ (ai, i) , l → l′′ (ai, i) ,

(ai, j) → (ai, j − 1)in1

, (ai, 1) → (C2)in2

| l : (A(i), l′, l′′) ∈ P,

m + 1 ≤ i ≤ m + 2, 2 ≤ j ≤ i},R2,A = {C2 → [2 t ]2, t → λ}

The main reason for additional rules is that we have to goto that level of the membrane structure which corresponds tothe register affected by the instruction. The same has to bedone for the SUB instructions:

Subtract:R1,S = {l → (l, 0, i), (l, 0, 1) → (l1C1)in2

| l : (S(i), l′, l′′) ∈ P}∪ {(l, 0, j) → (l, 0, j − 1)in1

| 2 ≤ j ≤ i,

l : (S(i), l′, l′′) ∈ P}∪ {(l, k, j) → (l, k, j − 1)out | 2 ≤ j ≤ i,

1 ≤ k ≤ 2, l : (S(i), l′, l′′) ∈ P}∪ {(l, 1, 1) → l′, (l, 2, 1) → l′′

| l : (S(i), l′, l′′) ∈ P}∪ {t → λ},

R2,S = {l1 → (l2)in2, C1 → [

1t ]

1}

The decrement case and the zero case are handled verymuch like it is done in Theorem 2 for register 2.

Decrement case:R1,D = {l4 → l5δ | l ∈ P−}R2,D = {l2 → l3δ | l ∈ P−}

∪ {l3 → (l4)in1, l5 → (l, 1, i)out

| l : (S(i), l′, l′′ ∈ P )},Zero case:R1,Z = {l6 → l7δ | l ∈ P−},R2,Z = {l1 → (l6)in1

, l7 → (l, 2, i)out

| l : (S(i), l′, l′′ ∈ P )}.

After the correct simulation of the decrement case or thezero case, the symbol (l, 1, i) or the symbol (l, 2, i), respec-tively, is released; by decrementing the third component, thesesymbols can travel along the line of membranes labelled by1 back to the skin membrane, where the rule (l, 1, 1) → l′

or the rule (l, 2, 1) → l′′is applied; hence, after decrementing,the label l′ is obtained, whereas in the zero case we continuewith label l′′.

We finally observe that all the derivations in the P systemΠ are performed in a deterministic way, which completes theproof.

c) Generating with one object: Considering P systemsonly having one object inside the system during the wholecomputation, we realize that such P systems with one objectwork in a sequential way, hence, we can easily prove thefollowing result:

Theorem 4: PsMAT λ is characterized by P systems

Π = (O,H, µ,w1, · · · , wm, R1, · · · , Rn)

where (a) the initial membrane structure is limited by twolevels (any membrane inside the skin is elementary) and thelabel 1 of the skin membrane is unique (i.e., the labels of theother membranes inside are different from 1), (b) exactly oneof the multisets wi consist of exactly one object, whereas allthe other initial multisets are empty, (c) the rules in R1 are ofthe forms a → buout, a → bini

uout, a → b, or a → [i

b ]i

with a, b ∈ O, u ∈ O∗, and i ∈ H ′ where H ′ = H −{s} , (d)the rules in Ri, 2 ≤ i ≤ n, are of the forms a → b, a → bout,or a → bδ.

Proof: Let Π be a P system obeying to the conditionsgiven above. We first observe that due to the form of theinitial configuration as well as due to the restricted forms ofthe rules, during any computation (i) the membrane structureis limited by two levels (any membrane inside the skin iselementary), (ii) the number of symbols inside the system isexactly one. Therefore, when constructing a matrix grammarG = (N,T, S,M) simulating Π, with T ⊆ O, a membranei can be represented by the nonterminal i, while the object a

and its position in membrane i can be stored as a pair (a, i).With InCon denoting the set of representations of the initialconfiguration given by µ,w1, · · · , wm (in fact only one suchrepresentation is necessary), we now can specify the matrixgrammar G as follows:

N = H ∪ O × H ∪ {(a, i) | (a, i) ∈ F},M = {(S → w) | w ∈ InCon}

∪ {((a, s) → (b, s)u) | a → buout ∈ Rs}∪ {((a, s) → (b, i)u, i → i) |

a → biniuout ∈ Rs, i ∈ H ′}

∪ {((a, i) → (b, i)) | a → b ∈ Ri, i ∈ H}∪ {((a, i) → (b, s)) | a → bout ∈ Ri, i ∈ H ′}∪

{((a, s) → (b, i)i) | a → [

ib ]

i∈ Rs, i ∈ H ′

}

∪ {((a, i) → (b, s), i → λ)| a → bδ ∈ Ri, i ∈ H ′}

∪ {((a, i) → (a, i)), ((a, i) → λ) | (a, i) ∈ F}

∪ {(a, i) → (a, i), j → λ) | (a, i) ∈ F,

i ∈ H ′, j ∈ H}

∪ {(a, s) → (a, s), j → λ) | (a, s) ∈ F,

j ∈ H − Ha}.

The set F ⊂ O × H is defined in such a way that a pair(a, i) is in F if and only if no rules of region i are applicableto a, eventually except for rules of the form a → binj

uout inR1, and for any a ∈ O, Ha ⊂ H ′ denotes the set of membranelabels j such that Rs contains rules of the form a → binj

uout,a, b ∈ O, u ∈ O∗. We now can see that a configuration with

Page 22: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

14

object a in region i is a halting one if and only if (a, i) ∈ F

and (i) either i 6= s or (ii) i = s and no membranes with labelsfrom Ha are present. The rules with the barred symbols (a, i)allow us to remove all non-terminals from the sentential formof M when Π has reached a halting configuration. Hence, itis easy to see that the Parikh set of the language generated byM equals the set of vectors generated by Π.

For showing the converse inclusion, we consider a matrixgrammar G = (N,T, S,M) without appearance checking inthe f -binary normal form and construct a P system Π simulat-ing G as follows: Π starts with the initial configuration [

sS ]

s.

Π = (O,H, [s

]s, w1, RAinit

, · · · , Rs),O = {S, S1, f,#} ∪ N1

∪ {li | l ∈ M, 0 ≤ i ≤ 4},H = N2 ∪ {s}

Rs = {S → [Ainit

S1 ]Ainit

| (S → XinitAinit) ∈ M}∪ {X → (l0)inA

| l : (X → Y,A → uv) ∈ M}∪ {l1 → [

ul2 ]

u

| l : (X → Y,A → uv) ∈ M, u ∈ N2}∪ {l1 → l3uout

| l : (X → Y,A → uv) ∈ M, u ∈ T ∪ {λ}}∪ {l3 → [

vl4 ]

v

| l : (X → Y,A → uv) ∈ M, v ∈ N2},∪ {l3 → Y vout

| l : (X → Y,A → uv) ∈ M, v ∈ T ∪ {λ}}∪ {X → #, | X ∈ N1 ∪ {#}∪ {f → #inA

| A ∈ N2},RA = {S1 → (Xinit)out | (S → XinitA) ∈ M}

∪ {l0 → l1δ | l : (X → Y,A → uv) ∈ M}∪ {l2 → (l3)out | l : (X → Y,B → Av) ∈ M}∪ {l4 → (Y )out | l : (X → Y,B → uA) ∈ M}∪ {# → #}

The rules S → [Ainit

S1 ]Ainit

∈ Rs as well as S1 →(Xinit)out ∈ RAinit

simulate the start matrix by producing amembrane corresponding to the literal symbol Ainit and anobject corresponding to the control symbol Xinit. A matrixl : (X → Y,A → uv) is simulated as follows: first, object X

removes a membrane with label A by the rules X → (l0)inA∈

Rs and l0 → l1δ ∈ RA; then, it creates membranes withlabels u, v if u, v are non-terminal symbols, or sends u, v

into the environment if u, v are terminal symbols. Finally, theobject X changes to Y . The rules X → #, # → # ∈ Rs,guarantee that if the derivation of G is “stuck” in a formwhich is not terminal, then the corresponding computation inΠ will enter an infinite loop. Finally, the result of a derivationin G is terminal if and only if f is produced and no othernon-terminals have remained; this is checked by rules thef → #inA

∈ Rs (after the application of such a rule, therules # → # ∈ RA then guarantee that the correspondingcomputation in Π will enter an infinite loop). Observing thatthe P system constructed above fulfills all the conditions statedin the theorem concludes the proof.

We conjecture that we need not restrict the membrane struc-ture, i.e., PsMAT λ = PsO1,1,∗P∗,∗,∗(ncoo, tar,mcre, δ).

d) Number of Symbols: The cardinality of the alphabet inthe computational completeness proofs usually depends on thecomplexity parameters of the simulated device. We will nowshow that any recursively enumerable set of m-dimensionalvectors of nonnegative integers can be generated by P systemswith membrane creation and dissolution, having the alphabetof 10 + m symbols.

Theorem 5: L(m)O2,2,10+mP1,∗,∗(ncoo, tar,mcre, δ) =RE(m).

Proof: We simulate a register machine M with outputtape and two registers, M = (2, T, P, l0, lh) where T ={ai | 1 ≤ i ≤ m}; let P+ denote the set of all ADD instructionlabels, and let P− denote the set of all SUB instruction labels.

Π = (O,H, [s

[I

]I

]s, w1, wI , Rl0

, · · · , RD),O = T ∪ {b, c, d, e} ∪ {r+, r−, r′

−| r ∈ {1, 2}},

H = P ∪ {I, 1, 2, s,D},w1 = λ,

wI = b

Ri = Ri,I ∪ Ri,O ∪ Ri,A ∪ Ri,S ∪ Ri,D

∪ Ri,Z ∪ Ri,N , i ∈ H.

For clarity, the rules are grouped in categories (initializa-tion, output, add, subtract, decrement case, zero case, nextinstruction).Initialization:

RI,I = {b → [l0

d ]l0},

Ri,I = ∅, i ∈ H − {I},Output:

Rl,O = a → aout | l : (write(a), l′), a ∈ T},∪ {a → aδ | a ∈ T}, l ∈ P ∪ {I},

Rs,O = {a → aoutb, a → aoutc | a ∈ T},Ri,O = ∅, i ∈ H − (P ∪ {I, s}) ,

Add:Rl,A = {d → (r+)out | l : (A(r), l′, l′′) ∈ P,

r ∈ {1, 2}} ∪ {r+ → r+δ | r ∈ {1, 2}},l ∈ P ∪ {I},

Rs,A = {r+ → [r

d ]r| r ∈ {1, 2}},

Rr,A = {d → bout, d → cout}, r ∈ {1, 2} ,

RD,A = ∅,Subtract:

Rl,S = {d → (r−)out | l : (S(r), l′, l′′) ∈ P,

r ∈ {1, 2}} ∪ {r− → r−δ | r ∈ {1, 2}},l ∈ P ∪ {I},

Rs,S = {r− → r′−

d, d → [D

d ]D

| r ∈ {1, 2}},RD,S = {d → λ} ,

Ri,S = ∅, i ∈ H − P − {I, s,D},Decrement case:

Rs,D = {r′−→ (r′

−)inr

, e → einD| r ∈ {1, 2}},

Rr,D = {r− → r′−

d, d → [d

d ]D}, r ∈ {1, 2} ,

RD,D = {r′−→ eout}, r ∈ {1, 2} ,

Ri,D = ∅, i ∈ H − {1, 2, s,D},Zero case:

Rs,Z = {r′−→ (r′

−)inD

} | r ∈ {1, 2}},RD,Z = {r′

−→ bδ | r ∈ {1, 2}},

Ri,D = ∅, i ∈ H − {s,D},Next instruction:

Rs,N = {b → binl, c → cinl

| l ∈ P},Rl,N = {b → [

l′a ]

l′, c → [

l′′a ]

l′′|

l : (X(r), l′, l′′) ∈ P, X ∈ {A,S} , l ∈ P}.

Page 23: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

15

The instruction labels are encoded into membrane labels,and the values of the registers are encoded by the number ofcopies of some membranes associated with them. The proofmainly relies on the fact that the amount of information neededto be transmitted between the instructions and the registers is“small”, i.e., the instructions tell us which operation (ADD orSUB, represented by r+, r−, r ∈ {1, 2}) has to be appliedand to which register i, 1 ≤ i ≤ m, it has to be applied. Theobjects r′

−, r ∈ {1, 2} , and e are used to implement the SUB

instruction, and the object d here is used to organize a delayfor the appearance checking, similar to the technique fromTheorem 2, whereas otherwise it is used when the membranesalready contain all the information needed.

After an operation has been simulated, the next instructionis chosen from two variants, non-deterministically chosen incase of an ADD instructions and as well in case of a SUBinstruction here depending on whether decrementing has beensuccessful or not. These variants are represented by the objectsb, c. The transition to the next instruction is done in thefollowing way: Object b in membrane l creates membrane l′,or object c in membrane l creates membrane l′′. After this, theobject “memorizes” the next register to be operated on and theoperation to be performed, and then membrane l is dissolved,leaving the newly created membrane into the skin.

If we want to start with the simplest membrane structure,one more symbol is needed as is exhibited in the followingcorollary:

Theorem 6: L(m)O1,2,11+mP1,∗,∗(ncoo, tar,mcre, δ) =RE(m).

Proof: We again simulate a register machine M =(2, T, P, l0, lh) with output tape and two registers as in theproof of the preceding theorem, but in the P system Π′ weuse an additional symbol a for an initial step starting in theskin membrane:

Π′ = (O,H, [s

]s, ws, Rl0

, · · · , RD),O = T ∪ {a, b, c, d, e} ∪ {r+, r−, r′

−| r ∈ {1, 2}},

H = P ∪ {I, 1, 2, s,D},w1 = a,

Ri = Ri,I ∪ Ri,O ∪ Ri,A ∪ Ri,S ∪ Ri,D

∪ Ri,Z ∪ Ri,N , i ∈ H.Initialization:

Rs,I = {a → [I

b ]I},

RI,I = {b → [l0

d ]l0},

Ri,I = ∅, i ∈ H − {s, I}.

Except for the initialization phase, the sets of rules areexactly the same as for the P system Π constructed in thepreceding proof, which observation already completes thisproof.

Figure 2 depicts the membrane structures of the P systemsconstructed in the succeeding proofs.

IV. ONE POLARIZATION

The theorem below provides a result, similar to that of The-orem 2, for P systems with active membranes with only onepolarization (usually called P systems with active membraneswithout polarizations). The construction gives no upper bound

Th. 7 s©©©©1¡

¡1· · ·︸︷︷︸n1 + 1

@@2

HHHH2· · ·︸︷︷︸n2 + 1

XXXXXXs

Th. 8 1©©1¡2 @2· · ·︸︷︷︸n1 + 1

HH1

HH2¡2 @2· · ·︸︷︷︸n2 + 1

HH1

Th. 9.1

(polariza-

tion 0)

Fig. 2. Membrane structures for active membrane proofs

on the number of objects present inside the system in general,but during any halting computation the number of objectsnever exceeds 3.

Theorem 7: LO1,3/∗,∗P4,∗,3 (active1, a, b, c, d, e) = RE.

Proof: In the description of the P system Π below, ws

describes the initial multiset for the skin membrane, whereasw′

sdenotes the initial multiset in the elementary membrane

having the same label as the skin membrane. We now simulatea register machine M = (2, T, P, l0, lh) with output tape andtwo registers:

Π = (O,µ,ws, w1, w2, w′

s, R) ,

µ = [s

[1 ]1[2 ]2[s]s

]s,

O = T ∪ {ai | 1 ≤ i ≤ 2} ∪ {l, l1, l2 | l ∈ P}∪ {b1, b2, t, d,#},

ws = l0, w1 = w2 = w′

s= λ,

R = RO ∪ RA ∪ RS ∪ RD ∪ RZ .

The rules are grouped in categories: output, add, subtract,decrement case and zero case.

Output:RO = {[ l → l′a ]

s, [ l → l′′a ]

s,

[ a ]s→ [ ]

sa | l : (write(a), l′), a ∈ T},

Add:RA = {l[ ]

i→ [ l ]

i, [ l ]

i→ [ l1 ]

i[ t ]

i,

[ t → λ ]i, [ l1 ]

i→ [ ]

il′,

[ l1 ]i→ [ ]

il′′ |

l : (A(i), l′, l′′), i ∈ {1, 2}},Subtract:

RS = {[ l → dbil1 ]s, bi[ ]

i→ [ bi ]

i,

[ bi ]i→ [ ]

it, [ t → λ ]

s,

[ bi → # ]s, [ bi → # ]

i,

[ # → # ]i| l : (S(i), l′, l′′), i ∈ {1, 2}}

∪ {d[ ]s→ [ t ]

s, [ t → λ ]

s

[ d → # ]s, [ # → # ]

s},

Decrement case:RD = {l1[ ]

i→ [ l1 ]

i, [ l1 ]

i→ l′

| l : (S(i), l′, l′′), i ∈ {1, 2}},Zero case:

RZ = {l1[ ]s→ [ l2 ]

s, [ l2 ]

s→ [ ]

sl′′

| l ∈ P−}

Like in the previous theorem, we simulate a registermachine with output tape and two registers; the values ofregisters i, i ∈ {1, 2}, are represented by the multiplicitiesof membranes i. However, since new membranes can onlybe created by dividing existing ones, one extra membrane isneeded for every register. The duty of d is to “keep busy” theelementary membrane with label s (otherwise # appears andthe computation does not halt), and the use of the objects bi

is to “keep busy” one membrane with label i for two steps.Object t is not needed for the computation, it is only used to

Page 24: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

16

keep the usual form of membrane division and communicationrules, it is immediately erased.

Generating an output is done by a non-cooperative rulechanging the instruction label and producing the correspondingsymbol, which is then sent out. Incrementing a register (l :(A(i), l′, l′′)) is done in the following way: l enters membranei (there is always at least one), dividing it. The object l1 inone copy is sent to the skin as l′ or l′′, while the object t inthe other copy is erased.

Subtracting with (l : (S(i), l′, l′′)) is done by keeping busythe elementary membrane with label s for one step and onemembrane with label i for two steps, while object l1 tries toenter any membrane with label i. If the register is not zero,then l1 immediately enters one of the other membranes withlabel i, dissolves it and changes to l′. If the register is zero,then after waiting for one step object l1 enters the elementarymembrane with label s and returns to the skin as l′′.

During a correct simulation of a run of the register machine(in particular, during any halting computation) there are nevermore than 3 objects present inside the system.

It is possible to reduce the number of membrane labels totwo at the price of starting with seven membranes.

Theorem 8: LO1,3/∗,∗P7,∗,2 (active1, a, b, c, d, e) = RE.Proof: (sketch) In a way similar to the proof

of Theorem 2, let us start with a membrane structure[1 [1 [1 ]1[2 ]2 ]1[2 [1 ]1[2 ]2 ]2 ]1 (see also Figure2), represent the values of a working register i by the numberof elementary membranes with label 2, inside the membraneswith labels i, minus one. The elementary membranes with la-bel 1 will be used for delay, just like the elementary membranelabelled by s was used in the proof of Theorem 7, and theinstructions are simulated accordingly. The main differenceis that when simulating an ADD or a SUB instruction wehave one additional initial step at the beginning choosing the“cluster membrane” representing the corresponding register(see the proof of Theorem 2). Obviously, at the end of thesimulation of the instruction in the right “cluster membrane”,we need an additional final step for moving the instructionlabel back to the skin membrane. The remaining details areleft to the reader.

V. TWO POLARIZATIONS

The last theorem established in this paper shows that withtwo polarizations we need only one membrane to simulateregister machines in a deterministic way:

Theorem 9: DPsaOP1,1,1(active2, a, c) = PsRE.Proof: We will simulate the actions of a deterministic

register machine M = (d, P, l0, lh) with d registers by a deter-ministic P system with one membrane and two polarizations.For every instruction l, let us denote the register l acts on byr(l) and the operation l carries out by op(l).Π = (O,E, [

1]01, w1, R),

O = {(a, i, j) | 1 ≤ i ≤ d, 0 ≤ j ≤ d + 2}∪ {(l, i, j) | l ∈ P, 0 ≤ i ≤ 2,

1 ≤ j ≤ d + 2} ∪ {#},E = {0, 1},w1 = (l0, 0, 0).

The system receives the input (a, 1, 0)n1 · · · (a, d, 0)nd inaddition to w1 in the skin membrane. The set R contains thefollowing rules:

[ z ]e

1→ [ ]

1−e

1z, e ∈ {0, 1}, (1)

[ (a, i, j) → (a, i, j + 1) ]01, 1 ≤ i ≤ d,

0 ≤ j ≤ d + 1, (2)[ (a, i, d + 2) → (a, i, 0) ]

01, 1 ≤ i ≤ d, (3)

[ (a, i, j + 1) ]11 → [ ]

01 (a, i, j + 1) , 1 ≤ i ≤ d, (4)

[ (l, 0, j) → (l, 0, j + 1) ]01, l ∈ P,

0 ≤ j < r(l) − 1, (5)[ (l, i, j) → (l, i, j + 1) ]

01, l ∈ P, i ∈ {1, 2} ,

r(l) ≤ j ≤ d + 1, (6)[ (l, 1, d + 2) → (l′, 0, 0) ]

01, l ∈ P, (7)

[ (l, 2, d + 2) → (l′′, 0, 0) ]01, l ∈ P, (8)

[ (l, 0, j) → (l, 1, j + 1) (a, j, j + 1) ]01, l ∈ P,

j = r(l) − 1, op(l) = A, (9)[ (l, 0, j) → (l, 0, j + 1) z ]

01, l ∈ P,

j = r(l) − 1, op(l) = S, (10)[ (l, 0, j) → (l, 0, j + 1) ]

01, l ∈ P,

j = r(l), op(l) = S, (11)[ (l, 0, j) → (l, 0, j + 1) ]

11, l ∈ P,

j = r(l) + 1, op(l) = S, (12)[ (l, 0, j) → (l, 1, j + 1) ]

01, l ∈ P,

j = r(l) + 2, op(l) = S, (13)[ (l, 0, j) → (l, 2, j) z ]

11, l ∈ P,

j = r(l) + 2, op(l) = S, (14)[ (l, 2, j) → (l, 2, j + 1) ]

11, l ∈ P,

j = r(l), op(l) = S, (15)[ (lh, 0, 0) ]

01 → [ ]

11(lh, 0, 0), 1 ≤ i ≤ d. (16)

The idea behind this proof is similar to the one from [2], [3]:the symbols corresponding to the registers have states (secondsubscript) 0, · · · , d + 2, and so do the symbols correspondingto the instructions of the register machine. The first subscriptof the instruction symbols is 0 if the instruction has not yetbeen applied, and it is 1 if increment (addition) or decrementhas been applied, and 2 if the decrement has failed (zero case).

Most of the time the polarization is 0; object z can reversethe polarization by (1). When the polarization is 0, the registersymbols cycle through the states by (2), (3). Before the currentinstruction l is applied, the instruction symbols also cyclethrough the states until the state becomes r(l) − 1, i.e., theindex of the register (the instruction operates on) minus one.We will explain the details of the application below. Afterthe instruction has been applied, the first subscript of theinstruction symbol changes to 1 or 2 and it cycles throughthe states by (6), finally changing into l′ by (7) or into l′′ by(8).

Addition is done by a non-cooperative rule (9). Decrementis done by a “diagonalization technique”: polarization 1 whenregister i is in state i + 1 signals a decrement attempt of

Page 25: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

17

register i by (4), and the polarization will change if and onlyif it has been successful. Thus, to apply l : (S(i), l′, l′′), theinstruction symbol in state i−1 additionally produces a symbolz. By the time z changes the polarization to 1 by (1), all othersymbols reach state i+1. After one more step the state symbolchecks whether the decrement has been successful, (13), ornot, (14). After a successful decrement all symbols continuechanging states with polarization 0 and state i+1. Otherwise,the instruction symbol additionally produces a symbol z andafter one more step all symbols continue changing states withpolarization 0 and state i + 1.

After the simulation of M has reached the final label, theinstruction symbol exits the system, changing the polarizationto 1. Since the register symbols are in state 1, the system halts.

Looking carefully into the proof of the preceding theoremwe realize that we have shown an even more general result,because the multisets remaining in the skin membrane at theend of a halting computation can be interpreted as the resultof the computation:

Corollary 10: Any partially recursive function can be com-puted by a deterministic P system with one membrane, twopolarizations and internal output.

VI. CONCLUSIONS AND OPEN PROBLEMS

We have shown that P systems with membrane creationgenerate RE, using two membrane labels and at most twoobjects present inside the system throughout the computation.Accepting any recursively enumerable language can also bedone with two membrane labels. On the other hand, it ispossible to bound the number of symbols by m + 10 andstill generate RE(m), provided that the number of membranelabels is unbounded.

We also have shown that RE is generated by P systemsusing four membranes and three labels or seven membranesand two labels in the initial configuration, where at most threeobjects are ever present in any halting computation.

It is known from [3], [2] that P systems with two polariza-tions and rules of types (a) and (c) generate PsRE using twomembranes, or accept PsRE using one membrane. We haveproved in this article that deterministic systems of this kindwith one membrane accept PsRE. Moreover, in the proof ofthis result (Theorem 9), the rules are global (because there isonly one membrane) and rules of type (c) are non-renaming(the contents of the environment does not matter).

Improving any complexity parameter greater than one (es-pecially in the case of ∗) in any theorem is an open question.Moreover, the following questions are of interest:

• How can the types of rules be restricted in Theorem 7?• How can target indications be restricted in Theorem 2?• What further restrictions cause a complexity trade-off?• What is the generative power of P systems without

polarizations and m membranes, m = 1, 2, 3?• What is the generative power of one-membrane P systems

with two polarizations and external output?

ACKNOWLEDGMENTS

The paper was written during the first author’s visit at theVienna University of Technology. The first author is supportedby the project TIC2002-04220-C03-02 of the Research Groupon Mathematical Linguistics, Tarragona, and acknowledges theMoldovan Research and Development Association (MRDA)and the U.S. Civilian Research and Development Foundation(CRDF), Award No. MM2-3034 for providing a challengingand fruitful framework for cooperation.

The third author would like to acknowledge the supportfrom Ministerio de Ciencia y Tecnologıa of Spain, throughPlan Nacional de I+D+I (2000–2003) (TIC2002-04220-C03-01), co-financed by FEDER funds.

REFERENCES

[1] A. Alhazov, P systems without multiplicities of symbol-objects, Infor-mation Processing Letters, submitted, 2004, accepted, 2005 (preprintversion: [Online]. Downloadable:http://www.geocities.com/aartiom/pub aa.html).

[2] A. Alhazov, R. Freund, Gh. Paun, Computational Completeness of PSystems with Active Membranes and Two Polarizations. Machines,Computations, and Universality, International Conference, MCU 2004,Saint Petersburg, 2004, Revised Selected Papers (M. Margenstern, Ed.),Lecture Notes in Computer Science 3354, Springer, 2005, 82–92.

[3] A. Alhazov, R. Freund, Gh. Paun, P Systems with Active Membranesand Two Polarizations, Second Brainstorming Week on Membrane Com-puting, Sevilla, 2004, (Gh. Paun, A. Riscos-Nunez, A. Romero-Jimenez,F. Sancho-Caparrini, Eds.), RGNC Tech. Rep 01/2004, University ofSeville, 2004, 20–36.

[4] J. Dassow and Gh. Paun, Regulated Rewriting in Formal LanguageTheory. Berlin: Springer-Verlag, 1989.

[5] M. Minsky, Computation. Finite and Infinite Machines.[6] Gh. Paun, Computing with membranes, Journal of Computer and System

Sciences, 61, 1, 108–143, 2000 and TUCS Research Report 208, 1998.[Online]. Available: http://www.tucs.fi

[7] Gh. Paun, Membrane Computing. An Introduction, Springer-Verlag,Berlin (Natural Computing Series), 2002.

[8] A. Salomaa and G. Rozenberg, Eds., Handbook of Formal Languages.Berlin: Springer-Verlag, 1997.

[9] The P systems webpage. [Online].Available: http://psystems.disco.unimib.it

Page 26: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

18

Page 27: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

19

COULD P SYSTEMS MODEL ENERGY-SENSING BEHAVIOR IN BACTERIA ?

Ioan I. Ardelean

Institute of Biology of the Romanian Academy Centre of Microbiology

Splaiul Independentei 296 PO Box 56-53, Bucharest 79651, Romania

e-mail: [email protected]

The Bacteria monitor the level of their cellular energy and respond to a decrease in energy by swimming to a microenvironment that re-energizes the cells. Aerobic bacteria- those bacteria which, like humans, use molecular oxygen for respiration migrate towards those microenvironments where the oxygen concentration is optimal for the occurrence of their respiration. For example, in bacterial suspensions placed between a microscopic slide and the coverslip, aerobic bacteria accumulate near the edge of the coverslip and in the vicinity of the air bubbles; strictly anaerobic bacteria, on the other hand, tend to collect in the centre where the oxygen concentration is minimal.

The active movement of bacteria along oxygen concentration gradients is called aerotaxis. Aerobic bacteria move towards higher oxygen concentrations, their aerotaxis is positive, whereas anaerobic bacteria move away from (high) oxygen concentration- their aerotaxis in negative.

Discovered more than a century ago, aerotaxis starded to be a major topic in Microbiology (and related Sciences) 40 years ago and is entering its Golden Age.

For the bacterium Escherichia coli the fundamental basis of this behaviour is

the ability to regulate frequency with which their flagella switch between clockwise (CW) and counterclockwise (CCW) rotation. CCW rotation results in “smooth swimming” of the bacterium in an approximately linear path, whereas the switch to CW rotation causes the bacterium to tumble, randomly reorienting it for the next smooth swimming (CCW) run (Silversmith and Bourret, 1999). During a positive taxis, the flagella rotate CCW and the bacterium smoothly swims up a concentration gradient. When they do not like the miroenvironment where they are, the flagella start to rotate CW and ONE tumble occurs, followed by another period of smooth swimming produced by CCW rotation [(Man, when faced problems do a reverence- a bacterium tumble! Are bacteria experts in martial arts?!]

This behaviour is essential for cell’s life because oxygen is needed for respiration in aerobic bacteria, but it is a toxic compound for anaerobic bacteria. This behaviour is essential for cells in natural environments enabling them to actively and permanently respond to oxygen fluctuations.

Aerotaxis is not the only taxis connected to the maintenance of appropriate levels of cellular energy in a

Page 28: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

20

changing environment. There are other type of taxis that contributes to this task: phototaxis, redox taxis, taxis to alternative electron acceptors, and chemotaxis to a carbon source (see bellow).This is not a pure lesson in microbiology, the interested reader being invited to consult some of the most recent reviews in this field (Taylor et al., 1999; Szurmant and Ordal, 2004).

The aim of this contribution is to try to focus the attention of Mathematicians and Informaticians, including P systemists on an essential aspect of bacteria (which is functional also in ALL type of cells ): the ability to sense signals ( oxygen, light , temperature etc.) form the extra-cellular medium and to behave towards these signals.

Biological fundamentals for aerotaxis

The overall process of aero taxis involves several integrates stages, each stage asking the presence and function of different proteins. The main stages in a taxis mechanism are the following: 1. Signal recognition and transduction is performed by receptors (and ligand binding proteins). Receptor proteins are usually transmembrane proteins, having the following domains: a sensing domain (at the exterior) ;a hydrophobic domain (so called TM-trans membrane helices) located within the plasma membrane, and an intracellular domain, containing signalling region. The sensing domain interact with the environmental signal (oxygen concentration, for example) and, through series of physical- chemical changes induces changes in the signalling region, changes which further enter the second stage, excitation (see bellow).

Interestingly, in E coli as in other cells where the receptors have an extra-membrane domain, the localization of the receptors is around the poles of the cells, and not uniformly over the whole cells surface. This clustering of receptors seems to be important in the possibility to achieve a given value (threshold?) of transduction, the so called amplification (more details, Szurmant and Ordal, 2004). This is a very open topic in Microbiology and it could be interesting for P systems at least as a new type of communication rules, in which the position, the density of the interacting “letters’, symbols is essential for the rule to occur. 2. Excitation The main protein of this stage is CheA kinase. The chemical and informatic coupling between signalling region and excitation occurs via a protein called CheW, which is present in all bacteria that have chemotaxis or phototaxis receptors. In E coli, CheW is required for the activation of CheA, but not for its inhibition. The activation of CheA is achieved by phosphorylation, the chemical aditions of a phosphate group to the protein (the phosporylated Cha A is indicated as Che-P). This activated form, CheA-P, serves as substrate, reservoir of phosphate, for another essential protein, CheY. When CheY brings the phosphate from CheA-P, it becomes phosporylated as well; in the phosphorylated form, as CheY-P, this protein governs the direction of the flagellar rotation (CCW in B.subtilis and CW rotation in E coli- this is biochemically, biophysically and biologically very important, and could be interesting also for P systems on how the same protein acting on different cells, with a different detailed molecular architecture of the flagellum, produces opposite

Page 29: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

21

effects- nota bene –the mechanisms in unknown yet!) 3. Adaptation. Is very important for bacterial taxis because the nature of bacterial motion requires the ability to recognize when the bacterium is moving in the wrong direction, i.e. away from the higher attractant concentration (Szurmant and Ordal, 2004). To do that, a “memory” is required that is able to indicate whether higher or lower concentration are being reached (Koshland, 1977) . Adaptation is biochemically achieved by the addition of a methyl group to one ore more type of proteins, which directly or indirectly affects the function of Che A and, afterwards, the status of CheY (more details, Szurmant and Ordal, 2004). In my opinion, the detailed study of what was called around 30 years ago as a “memory” could add not only essential information and knowledge about biological processes on their material and energetic sides, but also on their informational sides/ aspects. The mechanism of this claimed biological memory could be the model for the memory of a P- computer. 4. Signal removal means the biochemical removing of phosphate from CheY-P; the resulting dephosporylated form (CheY) binds no more on the flagellum. Signal removal is achieved by two mechanisms (known so far) a) CheY-P actively catalyses

autodephosporylation; as a consequence this protein has a half time shorter than 1 minute. However this short half time for a protein is still too long as compared with the needs for a quick response, on a time scale of seconds, to ever changing environments (Szurmant and Ordal, 2004). Thus a second (so far) mechanism for signal removal is necessary.

b) The second mechanism involves in E coli a protein, CheZ, which destabilizes CheY-P because it has phosphatase activity, thus removing the phosphate group from CheY-P (in other bacteria ex. Rhodobacter spheroides there are, instead of Che Z, other second mechanism for CheY-P inactivation) (so far, no bacterium was found in which the two second mechanisms are in work simultaneously).

In short, membrane –spanning receptors are coupled to an intracellular sensor kinase (CheA), which autophosphorylate, and the phorphoryl group is subsequently transferred from CheA to CheY. The phosporylated Che Y (CheY-P) diffuses through the citoplasm and binds to an assembly of proteins called the “swithch” at the base of the flagellar motor (Silversmith and Bourret, 1999). Case study – Aerotaxis in E coli

Aerotaxis, the active movement of bacteria along oxygen concentration gradients, is the response in changes to respiratory electron flow that results from an increase or decrease in oxygen concentration (Taylor et al., 1999, and references herein ). In E coli, in the absence of oxygen, alternative electron acceptors such as fumarate or nitrate support electron flow, and this is the basis for electron acceptor taxis. In the presence of oxygen , the thermodinamically preferred electron acceptor, the bacteria have a positive aerotaxis whereas alternative electron acceptors, nitrate or fumarate-if present in the medium- do not elicit any behavioural response (any taxis). However, if the oxygen concentration becomes the limiting growing factor, then

Page 30: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

22

bacteria start positive electron acceptor taxis toward the present alternative electron acceptor (nitrate or fumarate) [what about if both acceptors are present simultaneously in appropriate concentrations to support each one anaerobic growth?)

In E coli there are two types of receptors involved in aerotaxis 1) Aer, the sensor/signal transducer named

for aerotaxis and energy response senses the electron transport system, more precisely the ratio between the reduced forms and oxidized forms of electron transporters . Aer sensors contains a cofactor (flavin adenine dnucleotide) which seems to be able to accept or donate electrons for the electron transport system (Stock, 1997).

2) The Tsr which has no cofactor and is not a likely candidate for sensing redox potential or oxygen per se. There is evidence (see Taylor et al., 1999; Szurmant and Ordal, 2004) that Tsr senses changes in proton motive force (generated by the respiratory electron transport).

Biologically speaking the occurrence

of two type of sensor active in aerotaxis in the same bacterium is an example of parallelism, that could receive some attention for P systems which copiously use the concept (and power) of parallelism.(Paun, 2002)

Tsr is a multifunctional (and multidomain) protein which is involved in response to other stimuli such as: serine (the first discovered function for Trs was that of serine receptor), external pH (by its periplasmic domain), citoplasmic pH (by its citoplasmic domain) , temperature,

hidrofobic aminoacids, and indole (Taylor et al., 1999 and references herein). The Tsr story is very interesting for the biology of E coli and new results are expected in elucidating its structure-function relationship, as well as the biological parallelism between its different functions, yet another topic to which P systems could be attracted. The following picture summarizes the main events and molecular actors in Escherichia coli aerotaxis (fig. 1).

The possible importance of energy taxis for P systems could be shortly presented as following: A) Does Biological signal recognition fit the mathematical definition of calculus? B) Signal recognition and transduction belong to a larger family of two-component regulatory systems that share the same fundamental strategy of information transmission ( Silversmith and Bourret, 1999). These systems govern a wide range of signal transduction processes, including regulation of gene function, being involved in processes such as: enzyme regulation, quorum sensing, long term adaptation to factors (temperature, pH, osmotic pressure etc. Some of these processes have already been discussed in the frame work of P systems (Aguzzoli et al., 2004; Ardelean et al., 2004, 2005b, Ardelean and Cavaliere, 2005). Of special interest are Signals-Based P systems where the symbol-objects cannot be moved and the evolution rules can be activated/inactivated using a finite number of signals (signal-promoters) moved across the membranes (Ardelean et al.,2005a).

Page 31: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

23

FIG. 1. Schematic diagram of bacterial chemotaxis signal transduction. Transmembrane receptor proteins bind chemoeffectors and, through an adapter protein, CheW, control the activity of histidine protein kinase CheA. The cytoplasmic domains of the receptors are methylated by methyltransferase CheR and demethylated by methylesterase CheB. Attractant binding decreases kinase activity, while receptor methylation increases kinase activity. CheA provides phosphoryl groups to CheY and CheB, producing active forms of these proteins. Phosphorylated CheB demethylates receptors, providing a feedback loop that contributes to adaptation. The response regulator, phosphorylated CheY, binds to the flagellar motor, inducing clockwise flagellar rotation and a tumbling response. CheZ accelerates the dephosphorylation of CheY. The dashed lines indicate two postulated mechanisms for amplification of the excitation signal. Arrowheads and bars represent positive and negative regulation of phosphorylation, methylation, and clockwise flagellar rotation (after Stock, 1999).

This type of formalism could be useful to construct a model for other biological processes where protein phosphorylation (or other covalent modification of proteins e.g. methylation- the addition of a methyl group- ) plays an important role e.g the enzymatic cascades. C) The progresses in the deeper understanding of how protein modifications (phosphorylation, methylation etc) and protein-protein interaction (the binding of CheY to the ‘switch” of the flagellum) control the flow of information in biological system

(Stock,1999) could add more insights on living systems as informational systems, including the use of Informatics to study the process we call “life”, whose scientific definition is still missing. D) Protein receptors clustering (see above) E) Adaptation, including “memory” (see above) F) Interaction between different type of taxis- an almost terra incognita for Microbiology, could be a task for P systems, as well ?

Page 32: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

24

I) Interestingly , E coli cells which are in good energetic shape = fully energized cells, preferentially navigate by chemotaxis to aminoacids and other constituents for cell building. The energy taxis (aero, or carbon etc.,) has priority in bacterial behaviour only/mainly in the case of cells in which the energy levels are threatened ( see Taylor et al, 1999). The Microbiology is only at the beginning with topics like that, but it is my belief that in the near future the P systems, Informatics could contribute to understand the mechanism of this “decision”, and its significance for living cells as information-processing devices. (Probably the comas will disappear, “decision” will became decision, simultaneously with the passage from a metaphoric language to a scientific one). ii) In E coli the chemotaxis signal transducing pathways involves the following sensors : Tar ( for aspartate), Trg (for ribose), Tap (for dipeptides) and trs (for serine) All of these should interact in vivo, under real conditions, to generate bacterial taxis behaviour. The situation is further complicated because in the cell there are also other type of receptors which mediate other type of taxis. It seems, however, that P systems and other domains of Informatics could be of help in understanding this biological reality. iii) Another interesting example of interaction between two taxis is the magneto- aero –tactic response in magnetotactic bacteria There are two types of magneto-aerotaxis mechanisms (Frankel et al., 1997).

Axial magneto-aerotaxis: some strains (e.g. Magnetobacterium magnetotacticum) in a capillary tube (CT) placed in a static magnetic field (few gauss) oriented along the CT, migrate towards the both ends of

the CT, where the oxygen concentration is higher, thus forming two visible bands, ateach end of the CT. The two bands remain intact when the magnetic field rotates 1800 and, within each band, the cells themselves also rotate 1800. (see Bazylinski and Frankel, 2004 for more details)

Polar magneto-aerotaxis- other strains (e.g., marine coccus strain MC-1), migrate towards only one end of the CT following the direction where the magnetic field and the oxygen concentration gradient are oriented opposite to each other, forming one band. The band is dispersed by rotating the magnetic field by 1800, because the cells not only rotate themselves 1800, but afterwards they dissipate (for more details see Bazylinski and Frankel, 2004). Selected bibliography Aguzzoli S.,, I.I. Ardelean, D. Besozzi, B. Gerla, C. Manara, P systems under uncertainty: the case of transmembrane proteins, Proceedings of Brainstorming Workshop -Uncertainty in Membrane Computing_, 8-10 November 2004, Palma de Mallorca, Spain, 107-117.

Ardelean I.I.,, M. Cavaliere, D. Sburlan :2005a Computing Using Signals: From Cells to P Systems. Soft computing, 9,9, 631 – 639 Ardelean I.I.,, D. Besozzi,C.Manara 2004, Aerobic respirations a bio-logic circuit containing molecular logic gates. Pre-proceedings of Fifth Workshop on Membrane Computing (WMC5) G.Mauri, G.Paun, C. Zandron, Editors) Universita' di Milano-Bicocca, Italy June 14-16, 119-125

Ardelean I.I.,, Daniela Besozzi, M. H. Garzon, G. Mauri, S. Roy .(2005b) P System Models for Mechanosensitive Channels’ In „Applications of Membrane Computing" Publisher: Springer-Verlag, Natural Computing series Volume editors: Gabriel Ciobanu, M. Perez-Jimenez,Gheorghe Paun,pp. 43-81

Page 33: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

25

Ardelean I.I., M. Cavaliere ( 2005) Modelling Biological Processes with P Systems, „Applications of Membrane Computing" Publisher: Springer-Verlag, Natural Computing series Volume editors: Gabriel Ciobanu, M. Perez-Jimenez,Gheorghe Paun. pp.127-157

Bazylinski, D. A. and Frankel R. B. (2004). Magnetosome formation in prokaryotes. Nature Reviews. 2:217-230 Frankel, R. B., Bazylinski, D. A., Johnson, M. S., Taylor, B. L. (1997). Magneto-aerotaxis in marine coccoid bacteria. Biophys J 73: 994-1000 Koshland D.E. Jr. 1977 A response regulator model in a simple sensory system. Science 196:1055-1063

Păun Gh., Membrane Computing. An Introduction (Springer-Verlag, Berlin, Heidelberg, 2002). Stock A.M. 1999 A non linear stimulus response relation in bacterial chemotaxis. PNAS ,96:10945-10947 Silversmith R.E., Bourret R.B. 1999, Throwing the switch in bacterial chemotaxis. Trends in Microbiol. 16:16-21 Szurmant H., Ordal G.W. 2004 Diversity in Chemotaxis Mechansims among the Bacteria and Archaea. Microbiol. Mol. Biol. Rev. 68:301-319 Taylor B.L, Zhulin I.B, Johnson M.S. 1999, Ann.Rev. Microbiol., 53:103-128

Page 34: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

26

Page 35: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

27

Modelling Parallel Phenomena in Conversationswith P Systems

Gemma Bel Enguix and M. Dolores Jimenez Lopez Research Group on Mathematical LinguisticsUniversitat Rovira i Virgili

Pl. Imperial Tarraco, 1, 43005 Tarragona, SpainTel: + 34 977559542 Fax: + 34 977559597

Email: [email protected]: [email protected]

Abstract— Dialogue has been formalized with P systems in [4]as a sequential event, as it is usually considered and tackled.In this paper, we remark that conversation can be somehowunderstood as a parallel interaction between agents. P systems,which are by definition parallel devices, provide a suitable frame-work to model such non-standard conversational phenomena.Two parallel events in dialogue: immediate reply and overlappingare explained from a realistic pragmatic perspective, and formaldescriptions for them are introduced.

I. INTRODUCTION

Up to now, most of the theoretical descriptions of con-versation have been sequential, both from the linguistic andcomputational point of view. From computer science, agenttheory has approached dialogue using adjacency pairs andturn-taking as basic parts of the formalisation. Also P systemshave been applied to the description of conversation in [3]and [4], adapting membranes, which are parallel devices, forworking in a sequential manner.

However, human experience in the every-day life offersthe intuition that conversation is not always a sequential act.Indeed, dialogue can be understood, from several perspectives,as a parallel event.

Many times, during the conversation, some of the actantstalk at the same time, generating parallel sequences of ut-terances. In other scenarios, the conversation can split intotwo or more groups. Finally, sometimes verbal and non-verballanguage interact together in a way that, while one of theparticipants talks, the others use non-verbal signs in order tocommunicate.

Therefore, it seems that it is quite intuitive and useful totry to model conversation with parallel devices. We thinkP systems, which have been already used for modellingsequential conversations, are a good tool to reach that purpose.

In the sequel, we will introduce a definition for conversa-tional P systems, taken from [4] (section 2). In section 3, twotypes of parallelism in dialogue are described in the frameworkof P systems. Finally, in section 4, we give some conclusionsand ideas for future work.

II. CONVERSATIONAL P SYSTEMS

P systems were formally described in [11], whereas anadaptation to linguistics was introduced in [3] giving rise

to Linguistic P Systems (in short, LPS). These theoreticalformalizations are the basis for Conversational P Systems(CPS), which are defined in [4] from a pragmatic perspectiveof dialogue, based on speech acts ([13], [2]), multi-agenttheory ([1], [7], [8], [9], [14]) and dialogue games ([5], [14]).

Definition 1: A conversational P system is a 5-tuple

Π = (µ,V,M, T ,R),

where:• µ is the membrane system;• V is the set of alphabets associated to types of speech

acts;• M = ({u, . . . , w}, D, T ) is the initial configuration of

each membrane, being:– {u,. . . ,w} the set of acts over V?;– D, the domain of the membrane;– T is an element of T .

• T is the turn-taking protocol set;• R = {R1, . . . , Rn} is the set of rules of every membrane

of the system, where the order the rules are given is alsoa preference for using them.

In this definition, several concepts have to be explainedwhich are specially designed to adapt the functioning of Psystems to linguistic description. These are the following:a) configuration of alphabets, b) structure of the rules, c)domains, d) the turn-taking protocol T , e) halting criteria, andf) the configuration of output.

a) Configuration of Alphabets: We define a set of al-phabets V = {ω, κ, α, γ, ϕ, π, ε, λ, ξ}. Each one of themis a set of speech acts, as follows: ω = {o1, o2, . . . , on},speech acts of type open; κ = {q1, q2, . . . , qn}, speechacts of type query; α = {a1, a2, . . . , an}, speech actsof type answer; γ = {g1, g2, . . . , gn}, speech acts oftype agree; ϕ = {f1, f2, . . . , fn}, speech acts of type re-ject; π = {p1, p2, . . . , pn}, speech acts of type prescrip-tion; ε = {e1, e2, . . . , en}, speech acts of type explain;λ = {l1, l2, . . . , ln}, speech acts of type clarify; ξ ={x1, x2, . . . , xn}, speech acts of type exclamation.

b) Structure of the Rules: Rules are understood as theway the membranes-agents exchange elements and interacteach other. Every rule in the system has in the left side the

Page 36: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

28

indication of the turn-taking. At the right side it has, a) thegeneration in reply to the explicit invitation to talk, and b) theagent whom the speech act is addressed to, if it exists. Theturn-taking allows applying just one rule.

c) Domains: In CPS, domain of a membrane is relatedto the competence of an agent in a dialogue, this is, what theagent knows and can say. It is defined as the set of speech actsthat every membrane is able to utter. A domain can includeentire sets of acts defined for the system or just single actscoming from some set. Of course, just speech acts defined inV , the ones existing in the possible world described by µ, canbe used. DMn = {u, . . . , w ∈ V}.

d) Turn-Taking Protocol: For CPS turn-taking is free, itis not given as a sequence, but as a set of active elements.Every turn is distributed by the agent that is talking. Whensomebody asks, explains, or clarifies something during thedialogue, the speech act is usually addressed to some of theagents. Therefore, we establish that the addresser in each turncan choose the next speaker by means of the turn-takingassigner included at the end of each rule of the system. Thisis denoted by means of a letter depending of the speechact uttered in such rule. We establish, then, the followingturn-taking symbols related to every speech act: O (open), Q(Query), A (Answer), G (Agree), F (Reject), P (Prescription),E (Explain), L (Clarify), X (Exclamation). If no indication ofturn is given by the speaker, the turn goes to every membranecontaining a rule with the required symbol in the left. Ifmore than one membrane has such feature, then there is anambiguity in the turn-taking that could cause overlapping.

e) Halting Criteria.: The system stops if one of thefollowing conditions is fulfilled: a) No rule can be applied inany membrane, b) just one membrane remains in the system,c) no more acts are available.

f) Configuration of the Output: CPSs do not have specialoutput membranes. What has been produced by every mem-brane is stored as a result. For the configuration of the output,we define the generation register (GR), which gives account ofthe changes in the configuration of the system in every step.

III. PARALLEL PHENOMENA IN CONVERSATION:IMMEDIATE REPLY AND OVERLAPPING

In this section two simple phenomena of parallelism indialogue are introduced: immediate reply and overlapping. Thefirst deals with the interaction between verbal and non-verbalelements in the evolution of conversation. Verbal expressionscoexist with paralanguage and kinesic signs conforming a finaloutput where every one of the three basic aspects of humancommunication has a specialized role. The latter describes thesituation when several speakers interpret they have the turn totalk and start speaking at the same time.

We understand by kinesics a systematic study of the re-lationship between nonlinguistic body motions (as blushes,shrugs, or eye movement) and communication. A quite spreaddefinition of paralanguage is the following: optional vocaleffects (as tone of voice) that accompany or modify thephonemes of an utterance and that may communicate meaning.In this introductory approach to the issue we do not considerthe difference between both aspects.

The description of phenomena is quite simple. For imme-diate reply, a new kind of CPS has to be introduced, ableto coordinate utterances that generate dialogues, which arerelated to the speaker, with a different type of expressions,devoted to the description of the reply of the hearer(s). Thesehave to be applied immediately after the main utterance ofeach step of the computation, or even while the main utteranceis still being generated, and it needs a special type of rules. Foroverlapping, it is enough to leave one or more turn assignerswithout a defined target, in a way that several membranes canthink they have to talk. For this phenomenon, no new kind ofCPS is needed.

A. Immediate replyFor modelling CPS with immediate reply it has to be

assumed that every membrane in the system is active duringthe whole development of the conversation/computation. Themembrane that is uttering, participating in dialogue by meansof verbal language, is an active agent set in the state speaker.Membranes which are not participating by verbal language,are active membranes in the state hearer. Hearers take thespeech act produced by the speaker, process it and react to it.Afterward, the membrane where the turn-taking is addressed,changes to the state speaker and has the verbal turn ofconversation, whereas the speaker switches to hearer.

Let’s consider a system with the following membranestructure: µ = [s [1 [2 ]2 ]1 [3 ]3 ]s. After eight steps, theorder in the production of speech acts has been the following:M1 < M3 < M2 < M1 < M3 < M1 < M2 < M3. In thatcase, the representation of the state of the membranes (speaker,hearer) in each step, is shown in table I.

M1 M2 M3

Step1 Speaker Hr HrStep2 Hr Hr SpeakerStep3 Hr Speaker HrStep4 Speaker Hr HrStep5 Hr Hr SpeakerStep6 Speaker Hr HrStep7 Hr Speaker HrStep8 Hr Hr Speaker

TABLE ISTATES OF MEMBRANES-AGENTS

What is interesting in the evolution of systems with im-mediate reply is the behaviour of membranes in the statehearer. Membranes in state speaker have a regular behaviour.For every utterance of the speaker, hearers will produce areply, that can be related to kinesics or paralanguage. In thisway, every step of the computation has a double movement ofgeneration and reaction.

The outcome generated in every step of the computation isnot only the utterance of the speaker, but also the verbal ornon-verbal reaction of the hearer. In our systems, the hearertakes the production of the speaker and produces an adaptationof it.

Perhaps immediate reply could be considered not to be anexample of parallelism, because the reply comes after the

Page 37: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

29

M1 M2 M3

C0 : ∅ ∅ ∅

C1 : Um1 Ym2Um1 Ym3Um1

C2 : Ym1Um3 Ym2Um3 Um3

C3 : Ym1Um2 Um2 Ym3Um2

C4 : Um1 Ym2Um1 Ym3Um1

C5 : Ym1Um3 Ym2Um3 Um3,C6 : Um1 Ym2Um1 Ym3Um1

C7 : Ym1Um2 Um2 Ym3Um2

C8 : Ym1Um3 Ym2Um3 Um3

TABLE IIGR OF A CPS WITH IMMEDIATE REPLY: SCHEME

production of the speaker. But it takes place in the same turnand it is, thus, registered in the same step of the computation.This is, when an agent produces an utterance, the final resultof the output will be not only what it “says”, but also thereaction of the others when it is “speaking”. Moreover, somereplies are generated during the production of the speaker, like“yes ... yes” and other agreement marks.

To model the reply of the hearer membranes it is necessaryto design a new type of rules, ρ, regulating the response of eachagent to every utterance. Then, after several steps, the resultis the one shown in table II, where U means utterance and Yreply. Every U has been generated by a rule R, and every Yhas been generated by a rule ρ. Ym1Um3, for example, meansthe reply of the membrane 1 to the utterance of membrane 3.

From the previous concepts a new variant of CPS arises,called CPS with immediate reply, that can be defined in thefollowing way:

Definition 2: A conversational P system with immediatereply is a construct

Π = (µ,V,M, T ,R, ρ),

where µ,V,M, T , and R work like in a regular conversationalP system and:

• ρ = {ρ1, . . . , ρn} is the set of replying rules.

B. Overlapping

Overlapping refers to an entropic model of conversationin which several agents participate in two strands of thesame conversation simultaneously. This phenomenon occursduring the development of dialogue, never from the beginning,and it can finish gathering again all the agents in the sameproduction.

Overlapping starts due to an ambiguity in the turn-takingassignment, when the turn goes to two or more membranesat the same time. For modelling this phenomenon, precedencebetween membranes has to be removed. From the momentoverlapping starts, turn-taking can develop in two or multiplelines.

The structure of the membranes set as speaker in every stepof the computation and the lines of derivation, can be seen intable III. This shows a system with an inconsistence in the

turn-taking after four steps, lasting for two configurations. Atthe end, the conversation has again only one strand.

Steps 1 2 3 4 5 6 7 8

1 3Sp. Memb. 1 2 3 2 1 3

3 2

TABLE IIIDERIVATION SCHEME OF OVERLAPPING

Although in steps five and six two different strands ofconversation are generated, they never split. All the agentsparticipate in both lines either as a speakers or as a hearers,and they join again after two turns. Overlapping is, thus,like a merging of dialogues, with an additional feature: itis reversible. Therefore, in a given state of the computation,different lines can be gathered again.

The scheme of the Generation Register of a system withoverlapping is shown in table IV. It stores two lines ofconversation but just one final output.

C0 : ∅

C1 : P1

C2 : P2

C3 : P3

C4 : P2

C5 : P1 P3

C6 : P3 P2

C7 : P1

C8 : P3

TABLE IVSCHEME OF GR FOR OVERLAPPING

Due to the simplicity of the method, it is not necessary todefine a new type of CPS. The only condition is to eliminatethe algorithm for deciding the turn-taking assignment when itis not explicit.

Let’s see an example of a CPS with overlapping.

Π = (µ,V,R,M, T ),

where:

µ = [0 [1 ]1 [2 ]2 [3 ]3 ]0,

V = {κ, α, ε, ϕ}, whereκ = {q1, q2, q3, q4}α = {a1, a2, a3}ε = {e1}ϕ = {f1}

T = {O,Q,A,E, F}

M = M1 ∪ M2 ∪ M3, whereM1 = {∅, ε ∪ κ,O}M2 = {∅, κ ∪ α, ∅}

Page 38: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

30

M3 = {∅, α ∪ φ ∪ q2, ∅}}

R = R1 ∪ R2 ∪ R3, whereR1 = {r1 : O → e,E2},

r3 : A → q,Q3},R2 = {r1 : E → q,Q3,

r2 : Q → a,A,r3 : F → a,A1,r4 : A → q,Q3},

R3 = {r1 : Q → q,Q2,r2 : Q → a,A2,r3 : A → f, F2}.

This system starts in a sequential way, until step 4, whenM2 generates a1 sending a non defined turn-taking both to M1

and M3, as it is shown in Figure 1. In this moment, two linesof conversation appear, being all three membranes involved inboth of them.'

&

$

%

¾½»¼¾

½»¼

¾

½

»

¼

01 2

3

e1 q1 Q

q2

R2r2=⇒

'

&

$

%

¾½»¼¾

½»¼

¾

½

»

¼

01 2

3

e1 A q1a1

q2 A

Fig. 1. From C3 to C4: the ambiguous T

Nevertheless, the generation of a double strand of conversa-tion lasts just for two states of the system, C5 and C6, as can beseen in Figure 2. In the sixth step, both speakers, M2 and M3,send T=A to M1. But this membrane can apply the rule A → q

only once, because no more acts belonging to κ remain in thesystem. The membrane generates q and sends T=Q to M3, thatcan not apply any rule. Therefore, the dialogue finishes withonly one source of generation.

'

&

$

%

¾½»¼¾

½»¼

¾

½

»

¼

01 2

3

e1q3 q1a1F

q2f1Q

=⇒

'

&

$

%

¾½»¼¾

½»¼

¾

½

»

¼

01 2

3

e1q3AA q1a1a2

q2f1a3

Fig. 2. C5 and C6: Overlapping

IV. FINAL REMARKS

The aim of this paper has been to present, in a quitesimple way, some mechanisms of parallelism in dialogues.However, in a real conversation, overlapping and immediatereply coexist, and this is a complex phenomena of parallelism,that can be called multi-parallelism, which should be modelledin the future.

Other interesting aspects for the future are the distinctionof kinesics and paralanguage in the utterances of hearers inimmediate reply, as well as the characterization of severaltypes of replies in these systems and the description of thedifferences between overlapping and splitting.

Moreover, mathematical properties of parallel mechanismsin conversation have not been explored yet. The application ofthose techniques for generating several families of languagesat the same time can be an interesting connection betweendialogue and word processing.

REFERENCES

[1] Amgoud, L., Maudet, N. & Parsons, S. (2000), Modelling dialoguesusing argumentation, Proceedings of the 4th Conference on Multi-AgentSystems, Boston.

[2] Austin, J.L. (1962), How to Do Things With Words, Oxford UniversityPress, New York.

[3] Bel Enguix, G. (2003), Preliminaries about Some Possible Applicationsof P Systems in Linguistics, in Paun, Gh., Rozenberg, G., Salomaa, A.& Zandron, C., Membrane Computing, LNCS 2597, Springer, Berlin.

[4] Bel Enguix, G. & Jimenez-Lopez, M.D. (2005), Linguistic membranesystems and applications, in Ciobanu, G., Paun, G., Perez-Jimenez, M.J.(eds.), Applications of Membrane Computing, Berlin, Springer-Verlag:347-388.

[5] Carlson, L. (1993), Dialogue games, Reidel, Dordretch.[6] Ciobanu, G., Paun, G. & Perez-Jimenez, M.J. (eds.) (2005), Applications

of Membrane Computing, Berlin, Springer-Verlag.[7] Frohlich, D. & Luff, P.(1990), Applying the Technology of Conversation

to the Technology for Conversation, in Luff, P., Gilbert, N. & Frohlich,D. (eds.), Computers and Conversation, Academic Press, London: 187-220.

[8] Grau, B., Sabah, G. & Vilnat, A. (1994), Control in Man-MachineDialogue, Think 3:32-55.

[9] Moulin, B., Rousseau, D. & Lapalme G. (1994), A Multi-Agent Approachfor Modelling Conversations, in “AI’94. Natural Language Processing.Proceedings of the Fourtheenth International Avignon Conference. Vol.3”, Paris: 35-50.

[10] Paun, Gh. (ed.) (1995), Artificial Life: Grammatical Models, Black SeaUniversity Press, Bucharest.

[11] Paun, Gh. (2000), Computing with Membranes, Journal of Computerand System Sciences, 61: 108-143.

[12] Paun, Gh. (2002), Membrane Computing. An Introduction, Berlin,Springer-Verlag.

[13] Searle, J. (1999), Speech Acts: An Essay in the Philosophy of Language,Cambridge University Press, Cambridge.

[14] Traum, D.R. (1999), Speech Acts for Dialogue Agents, in Wooldride, M.& A. Rao (eds.), Foundations of Rational Agency, Kluwer, Dordrecht:169-201.

[15] The P Systems Web Page: http://psystems.disco.unimib.it

Page 39: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

31

On P Systems with Bounded ParallelismFrancesco Bernardini∗, Francisco J. Romero-Campero†, Marian Gheorghe∗,

Mario J. Perez-Jimenez†, Maurice Margenstern‡, Sergey Verlan‡,Natalio Krasnogor§

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

Email: {F.Bernardini, M.Gheorghe}@dcs.shef.ac.uk†Research Group on Natural Computing

Department of Computer Science and Artificial IntelligenceUniversity of Seville, Avda. Reina Mercedes, 41012 Sevilla, Spain

Email: {fran, marper}@cs.us.es‡ LITA, Universite de Metz

Ille du Saulcy, 57045 Metz Cedex, FranceE-mail: {margens, verlan}@sciences.univ-metz.fr

§ Automated Scheduling, Optimisation and Planning Research GroupUniversity of Nottingham, Jubilee Campus, Nottingham NG8 1BB, UK

E-mail: [email protected]

Abstract— A framework that describes the evolution of Psystems with bounded parallelism is defined by introducing basicformal features that can be then integrated into a structuraloperational semantics. This approach investigates a genericstrategy of selecting membranes and rules and applying the rules.P systems with boundary rules are used to illustrate the case andan example dealing with an evolution strategy involving boundedparallelism is discussed.

I. INTRODUCTION

Membrane computing has been introduced with the aim ofdefining a computing device, called P system, which abstractsfrom the structure and the functioning of living cells [21].The main results in this area show that P systems are a verypowerful computational model mostly equivalent to Turingmachines. Recent researches have been instead dedicated tothe study of P systems as a modelling tool for biologicalsystems [7], [8], [24], [5], [9]. In this case P systems are notused as a computing paradigm, but rather as a formalism fordescribing the behaviour of the system to be modelled. There-fore, there is a growing interest in developing implementationsfor the membrane computing paradigm in order to be able toexecute a P system model and run simulations of biologicalphenomena. In this respect, a number of tools have alreadybeen produced (some of them are available from [29]) butyet correct implementation techniques need to be identified,especially when the quantitative aspects featuring the “reality”of a biological phenomenon are considered by the model.

Apart from the main stream of the research involving thestudy of the computational capabilities of different variantsof P systems and applications in biology, there were investi-gations into formally defining the semantics of the behaviourand evolution of such systems. In [2] an operational semanticsfor a class of P systems is defined and its implementation in

Maude is described. A step further has been taken by providinga structural operational semantics for that class of P systemswith correctness proofs for each set of inference rules [3]. Bothapproches refer to P systems evolving in a maximally parallelmanner, which is the cornerstone of most of the variants ofthe model.

In this paper, we present a variant of P systems withboundary rules where the rules have associated conditions andattributes. Then, for this variant, we provide some operationalsemantics definitions that characterise different strategies forthe application of the rules based on the notion of parallelismof type (k, q) (in each step, at most k membranes can evolveand, inside each one of them, at most q rules can be used).The selection of membranes and rules relies on the structureof the systems and conditions and attributes associated torules. This evolution strategy will cover some more recentapproaches dropping the maximal parallelism and consideringasynchronous sequential behaviour [13], bounded parallelism[12], probabilistic approaches [25], biologically oriented meth-ods [8], [10], [5], [24].

II. THE MODEL

A cell-like P system is usually defined as a hierarchicalarrangement of a number of membranes identifying a corre-sponding number of regions inside the system, and with theseregions having associated a finite multiset of objects and afinite set of rules. Moreover, in such a membrane structure,all the membranes but one must be included in a unique mainmembrane, which defines the “boundary” of the system withrespect to the external environment. This particular membraneis called skin membrane. Rules of many different forms havebeen considered for cell-like P systems in order to encodethe operation of modifying the objects inside the membrane,

Page 40: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

32

moving objects from one place to the other, dissolving, creat-ing, dividing membranes etc. The former operation is usuallyencoded by using multiset rewriting rules whereas, for themovement of objects across the membranes, one can eitherchoose to use the targets here, in, out, which represent a sim-ple model for the biological process of diffusion of moleculesacross the membranes, or to use symport/antiport rules, whichprovide an abstraction for the biological mechanisms of activetransport of small molecules across the membranes [22].

Here, in order to capture the features of most of these rules,we consider rules of the form:

u [l v ] → u′ [l v′ ] (1)

with u, v, u′, v′ some finite multisets of objects and l the labelof a membrane. These rules are multiset rewriting rules thatoperate on both sides of the membranes, that is, a multisetu placed outside a membrane labelled by l and a multisetv placed inside the same membrane can be simultaneouslyreplaced by a multiset u′ and a multiset v′ respectively. Inthis way, we are able to capture in a concise way the featuresof both the communication rules and the transformation rulesconsidered in [6]. Moreover, as shown in [24], rules like (1)allow us to express any sort of interactions occurring at themembrane level, and, in particular, they are useful to modelthe binding of a signal molecule to its corresponding receptorthat occurs at the cell-surface level.

Another important concept commonly used in membranecomputing is that of promoters/inhibitors as multisets ofobjects that affect the applicability of the rules associated tomembranes. Promoters are multisets of objects which, whenpresent inside a membrane, make certain rules to be applicableinside that membrane and which prevent those rules frombeing applied when they are not present inside that membrane.Inhibitors are instead multisets that operate in the oppositesense: when they are present inside a membrane they blockthe application of certain rules inside that membrane [22]. Wegeneralise this concept of promoters/inhibitors by associatingto each rule a boolean predicate π expressing a genericproperty over the objects contained inside a membrane andthe objects contained in the surrounding region or in one ofthe regions that exists inside the current one. Such a predicateπ is meant to specify a condition that need to be satisfied tomake the rule to be applicable inside a given membrane.

Finally, we associate to each rule a finite set of attributeswhich are meant to capture the quantitative aspects that are of-ten necessary to characterise the “reality” of the phenomenonto be modelled. The necessity of taking into account thesequantitative aspects has been made clear in a few recentapplication of P systems to the modelling of biological systems[7], [8], [24], [5], [9].

Therefore, we introduce the following notion of program asthe basic feature describing a generic process occurring insidea membrane.

Definition 2.1 (program): Let O be an alphabet for theobjects and let Lab be an alphabet of labels. A program isa construct

〈π >> u [l v ] → u′ [l v′ ], A〉

with u, v, u′, v′ ∈ O∗ some finite multisets of objects, π ageneric boolean predicate, l is a label from Lab and A a finiteset of attributes associated with the rule.

As we have already said, the predicate π is used to expressa condition that needs to be satisfied in order to make the ruleapplicable inside a membrane. A rule contained in a program issaid to be active inside a membrane if the predicate π evaluatesto true, otherwise it is said to be inactive. The set of attributesin A can instead be used to associate to each rule a kineticconstant [8], [24], [5] a probability [7], [4], or a more generalfunction returning the number of occurrences of the multisetsu, v to be consumed and the number of occurrences of themultisets u′, v′ to be produced. As well as this, the attributesmight be used to associate to a rule some “side-effect” inorder to alter other properties of the membrane where the ruleis applied.

Our notion of program bears some similarities with, and issomehow inspired by, the notion of attribute grammars usedfor syntax-directed language translation and automatic codegeneration [1], as well as the notion of parametric L systemsaugmented with C code used for modelling plant growth anddevelopment [17]. In a sense, our programs also resemble theconcept of guarded commands for non-deterministic program-ming introduced by Dijkstra in 1975 which has then led toCCS, CSP and the modern theory of concurrent systems basedon π-calculus [20].

Now, we can define a P system by simply associating a finitemultiset of objects to each membrane in a given membranestructure and by considering a finite set of programs to makethese objects evolve from one configuration to the other.

Definition 2.2 (P system): A P system is a construct Π =(O,Lab, µ,M1,M2, . . . ,Mn, R1, . . . , Rn) where:

• O is a finite alphabet of symbols representing objects;• Lab is a finite alphabet of symbols representing labels

for the compartments;• µ is a membrane structure containing n ≥ 1 membranes

labelled with elements from Lab;• Mi = (wi, Li), for each 1 ≤ i ≤ n, is the initial

configuration of membrane i with Li ∈ Lab and wi ∈ O∗

a finite multiset of objects;• Ri, for each 1 ≤ i ≤ n, is a finite set of programs in

membrane i of the form specified in Definition 2.1 withobjects in O and labels in Lab.

Thus, the initial configuration of each membrane i, with1 ≤ i ≤ n, is given by a finite multiset of objects from O andby a label from Lab. A program consists of a rule of the formu [Li

v ] → u′ [Liv′ ], with Li the label of membrane i, may be

either in Li or in the membrane surrounding it. Moreover, wecan now precisely say that the evaluation of the predicate π insuch a program must be done by considering both the contentof membrane i and the content of the membrane upper(µ, i)(i.e., the membrane that directly contains membrane i). Theevaluation of the predicate π, which has to be done before theapplication of the rule inside membrane i, is then denoted byπ(i, upper(µ, i)).

P systems are usually considered as being distributed max-imal parallel multiset rewriting systems [22]. This means, ineach step, in each membrane, all the objects that can evolve by

Page 41: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

33

means of some rules must evolve in parallel at the same timeby means of these rules, with the sole restriction that the sameoccurrence of the same object cannot be used by more thanone rule at a time. That is, in each step, for each membrane,a maximal set of rules to be applied is non-deterministicallyselected by making sure that no further rules can be appliedto the objects left inside the membranes. On the other hand, afew recent works [18], [7], [8], [25], [24], [5] have addressedthe issue of introducing new strategies for the application ofthe rules where the set of rules to be applied in any step isnot maximal, but it is somehow bounded. The reasons forthe introduction of new derivation/evolution strategies may bedifferent, but, in the context of modelling biological systems,one can say that restrictions to maximal parallelism are oftenrequired in order to close the gap between the abstractness ofthe model and the “reality” of the phenomenon to be modelled[18], [7], [8], [25], [24], [5]. In this respect, the key issuesthat need to be addressed in order to define a strategy for theapplication of the rules in a P system are: a) how to selectthe next rule to be applied inside a given membrane, b) howmany different rules can be applied in parallel at the same timeinside the membrane, and c) how many different membranescan evolve in parallel at the same time.

A function f will compute the number of membranes thatwill be selected to evolve in each step of the computation (k)and the number of rules applied in each membrane (q). For thisreason this concept of parallelism will be called of type (k, q).This function may return a bounded number of rules that areapplied a certain number of times or an arbitrary number oftimes or in a maximal parallel manner. The rules may bechosen non-deterministically or according to some restrictionsimposed (partial order or priority relationships) or some othercriteria that might rely on attribute values leading to differentselection mechanisms.

The function f is given in every case by a precise algorithm.An illustration will be further given in the paper.

These strategies are presented in the framework of anoperational semantics very similar to the one proposed in [2].The approach will provide a basis to inference rules definedin [3].

III. OPERATIONAL SEMANTICS

We will introduce some concepts that define the frameworkof an operational semantics for P systems evolving in a(k, q)−parallel manner.

Let Π = (O,Lab, µ,M1,M2, . . . ,Mn, R1, . . . , Rn) be a Psystem as specified in Definition 2.2, where Mi = (wi, Li)with 1 ≤ i ≤ n and the programs in Ri are denoted

j : 〈π >> u [Liv ] → u′ [Li

v′ ], A〉.

Similar to [3] we will denote by O∗

cthe set of finite multisets

over O. If a membrane Mi contains the multiset wuw′ andthe membrane Ml, included in Mi, has the multiset yvy′ andRi contains j : 〈π >> u [Ll

v ] → u′ [Llv′ ], A〉 and the

predicate π is true then the result of applying j to objectscontained in Mi and Ml simultaneously will lead to themultisets w(u′, here)w′ and y(v′, here)y′ in Mi and Ml,

respectively. I.e. we will attach to any multiset obtained byapplying a given program the target here. This will allowwhen the structural operational semantics is defined accordingto [3] to simulate the execution of a parallel rewriting rule intwo steps: rewriting and communication. After the first stepthe multisets obtained will have associated the target here andin the second step these will be reverted to usual multisets overO [3].

It will be also defined, similar to [3], the concept ofcommitted configuaration and the process of passing from oneconfiguration C1 to another one C2, C1 =⇒ C2, if the nexttwo steps are executed

• (k, q)−parallel rewriting step, C1pr

=⇒(k,q) C ′

1, consistsof selecting k membranes and in each membrane q rulesare applied according to the function f ;

• parallel communication of objects, C ′

1tar=⇒ C2, consists

of reverting the objects marked as here to objects of O.The concepts of irreducibility and (L,w)−consistency

will be introduced similar to [3], where L is the label of amembrane and w its current multiset of objects. The concept ofmpr-irreducibility will be replaced by (k, q)−irreducibility.In this case a multiset consisting only of objects is calledL−irreducible iff q rules have been applied or less than q

when there are no more rules available. For a membrane M

labelled L and containing the multiset w, a non-empty multisetof n boundary rules is (L,w)−consistent iff the left hand sideof these rules have the multisets ui, their predicates are trueand:

• w = u1 . . . unz, so each rule is applicable to w,• either n = q or n < q and no other rules are available to

be applied.For example the P systems Π =

(O,Lab, µ,M1,M2, . . . ,Mn, R1, . . . , Rn) where• O = {a, b, c, d, e, g, x, y};• Lab = {1, 2, 3};• µ = [1[2][3]];• w1 = a5b5, w2 = c4d,w3 = eg;• R1 = {a[2c] → x[2y]}, R2 = {b[2c] → y[2x]}, R3 = ∅.

We will obtain for (2, 2)−parallel rewriting:

(1|a5b5; (2|c4d); (3|eg))pr

=⇒(2,2)

(1|aaa(xx, here)bbb(yy, here)(2|(xxyy, here)d); (3|eg)).

Where the two membranes selected were 1 and 2 and in eachof these membranes two rules are applied in parallel.

Having these concepts we may rewrite the inference rules[3] by replacing maximal parallelism with (k, q)−parallelism.It may be also proved that (k, q)−irreducibility induces correctoperations. In the same way parallel communication may beapproached (in this case only here targets being considered)and correctness results for target irreducibility may be obtainedsimilar to [3].

Remark 3.1: The approach on semantics proposed herefor parallelism of type (k, q) includes the usual notion ofmaximal parallelism [22] as a particular case of it. In fact,it is easy to see that, when k is equal to the number ofmembranes in the systems and f returns the number of objects

Page 42: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

34

in each membrane, our semantics is equivalent to the usualnotion of maximal parallelism. In general, for such a typeof parallelism, a rule contained in a program labelled by j

is non-deterministically applied a number of times. It can bealso considered a restriction on the application of a rule to alimited number of times.

Remark 3.2: The semantics approach proposed here, withrespect to [2], defines a more general framework whichabstracts from the language chosen for implementing the Psystem model; as well as this, the rules considered are of amore general form, which allow the simultaneous rewriting ofobjects on both sides of the membranes.

Remark 3.3: Our notion of parallelism of type (k, q) issomehow related to the notion of asynchronous P systems from[22] (see also [13] for some further discussions and results).The difference is that, for parallelism of type (k, q), themaximal number of membranes that can evolve in parallel andthe maximal number of rules that can be applied inside thesemembranes are provided through the function f , whereas,for asynchronous P systems, the values of these constantsare totally arbitrary; in fact, in each step, the number ofmembranes, as well as the number of rules to be appliedinside these membranes are arbitrary. More recently, a notionof minimal parallelism has been proposed in [11] that restrictsthis latter type of non-determinism to the number of rules to beapplied inside the membranes: in each step, all the membranesthat can evolve by means of some rules must evolve but,inside each membrane, the number of rules to be applied isnon-deterministically chosen. Finally, it is easy to see that thenotion of P systems working in the sequential mode from [22],[13], [12] corresponds to the semantics proposed here for Psystems operating with parallelism of type (1, 1). Moreover, itis easy to see that our notion of parallelism of type (k, q)coincides with the notion of q-Max-Parallelism from [16]when k is equal to the number of membranes in the system.

Remark 3.4: An application of the semantics of P systemsdefined in this paper is considered in [24] where a model forthe EGFR signalling cascade is proposed. In that case, rulesare supposed to model chemical reactions with an associatedkinetic constant and, for each rule, the function f returnsall the membrane components and computes the so called“mass action law”: the value is given by the product ofthe concentration of the reactants, expressed in molar units,multiplied by the corresponding kinetic constant. A slightlydifferent approach is considered in [8] (see also [10], [9]) thatis based on the notion of metabolic algorithm. In this case, allthe rules are supposed to be applied in parallel at the same timewith a multiplicity again given according to the mass actionlaw. The variation on the concentration of each reactant is thenobtained by summing up the contribution of each rule. In thisway, it is avoided the introduction of the non-determinism, butit is necessary to introduce some further constraints in order toavoid consuming more reactants than those currently availableinside the membranes.

IV. P SYSTEMS WITH PARALLELISM OF TYPE (k, 1)

In this section we will focus on a specific behaviour ofP systems when in a number of membranes, most frequently

only one, a program will be chosen to be executed. This exam-ple will illustrate a particular way to compute the function f

that selects membranes and programs and it is fully chemicallymotivated.

A. An algorithm to select membranes and programsGillespie’s algorithm [15] (see also [14] for some recent

improvements) provides an exact method for the stochasticsimulation of systems of bio-chemical reactions; the validityof the method is rigorously proved and it has been alreadysuccessfully used to simulate various biochemical processes[19]. As well as this, Gillespie’s algorithm is used in theimplementation of stochastic π-calculus [26], [30] and inits application to the modelling of biological systems [27].Our method based on Gillespie’s algorithm represents afirst attempt to simulate the behaviour of P systems witha stochastic semantics. This is done by taking into accountthe fact that, with respect to the original algorithm, in Psystems we have different regions, each one with its ownset of rules, and the application of a rule inside a regioncan affect the content of another region too. Specifically,let Π = (O,Lab, µ,M1,M2, . . . ,Mn, R1, . . . , Rn) be a Psystem as specified in Definition 2.2 with the membranesMi = (wi, Li) and the programs Ri, 1 ≤ i ≤ n. The set Ri ofprograms that are active inside membrane contains elementsof the form (j, πj , rj , pj , kj) where:

• j is the index of a program from Ri;• πj is the predicate; in this section this will be always true

and will be omitted;• rj is the boundary rule rule contained in the program j;• pj is the probability of the rule contained in the program j

to be applied in the next step of evolution; this probabilityis computed by multiplying a stochastic constant kj ,specifically associated with program j, by the numberof possible combinations of the objects present on theleft-side of the rules with respect to the multiset wi (orthe multiset wi′ , with i′ = upper(µ, i)) - the currentcontent of membrane i (i′); for example, if we have a rule[ ab ]Li

→ [ v ]Li, with a, b ∈ O, v ∈ O∗, the probability

pj is given by kj ∗|wi|a∗|wi|b (i.e., there are |wi|a∗|wi|bdifferent possible ways of assigning objects to the rule[ ab ]Li

→ [ v ]Li).

Then an algorithm to select membranes and programs for(k, 1)−parallel behaviour of a P system is introduced.

First, for each membrane i, we compute the index of thenext program to be used inside membrane i and its waitingtime by using the classical Gillespie’s algorithm:

1) calculate a0 =∑

pj , for all (j, rj , pj , kj) ∈ Ri;2) generate two random numbers r1 and r2 uniformly

distributed over the unit interval (0, 1);3) calculate the waiting time for the next reaction as τi =

1

a0ln(

1

r1)

4) take the index j, of the program such thatj−1∑

k=1

pk <

r2a0 ≤

j∑

k=1

pk;

Page 43: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

35

5) return the triple (τi, j, i).Notice that the larger the stochastic constant of a rule and thenumber of occurrences of the objects placed on the left-sideof the rule inside a membrane are, the greater the chance thata given rule will be applied in the next step of the simulation.There is no constant time-step in the simulation. The time-stepis determined in every iteration and it takes different valuesdepending on the configuration of the system.

Next, a step of application of the rules is simulated by usingthe following procedure:• Initialisation

◦ set time of the simulation t = 0;◦ for each membrane i in µ compute a triple (τi, j, i)

by using the procedure described above; construct alist containing all such triples;

◦ sort the list of triple (τi, j, i) according to τi;• Iteration

◦ extract the first triple, (τm, j,m) from the list;◦ set time of the simulation t = t + τm;◦ update the waiting time for the rest of the triples in

the list by subtracting τm;◦ apply the rule contained in the program j only once

changing the number of objects in the membranesaffected by the application of the rule;

◦ for each membrane m′ affected by the application ofthe rule remove the corresponding triple (τ ′

m′ , j′,m′)from the list;

◦ for each membrane m′ affected by the applicationof the rule j re-run the Gillespie algorithm for thenew context in m′ to obtain (τ ′′

m′ , j′′,m′), the nextprogram j′′, to be used inside membrane m′ and itswaiting time τ ′′

m′ ;◦ add the new triples (τ ′′

m′ , r′′,m′) in the list and sortthis list according to each waiting time and iteratethe process.

• Termination◦ Terminate simulation when time of the simulation

t reaches or exceeds a preset maximal time ofsimulation.

Therefore, in this approach, it is the waiting time computed bythe Gillespie’s algorithm to be used to select the membraneswhich are allowed to evolve in the next step of computation.These membranes have the same waiting time. Specifically,in each step, the membranes associated to programs with thesame minimal waiting time are selected to evolve by meansof the corresponding rules. Moreover, since the applicationof a rule can affect more than one membrane at the sametime (e.g., some objects may be moved from one place toanother), we need to reconsider a new program for each oneof these membranes by taking into account the new distributionof objects inside them.

Remark 4.1: The use of a variable time-unit for each stepdoes not affect the semantics of our model; in each step, asingle rule at a time is applied inside a specific membrane.This means the behaviour of the systems is still synchronousalthough each application of the rule has associated a differenttime-unit. In fact, the waiting time is mainly used as a

parameter necessary to determine the rule to be applied inthe next step of computation.

Remark 4.2: The current algorithms brings some improve-ments with respect to the general strategy of selecting mem-branes and programs. In the iteration phase, we need not torecompute all the probabilities associated with each programapplicable inside each membrane, but we can do that onlyfor those membranes which are actually affected by the lastapplication of a program. That is because the value of theprobabilities associated with the other rules remain unchanged.

Remark 4.3: The use of the waiting time parameters leadsto selecting membranes using the minimum waiting timeprinciple in order to chose those with the same value of thatparameter. Getting rid of this parameter will lead to a variant ofthis algorithm that is associated to a (n, 1)−parallel behaviourof the system, where n is the total number of membranes.Indeed, in this case there is no way to distinguish betweenmembranes and all them will be selected.

B. Example

A simulator for P systems that is based on the semanticsillustrated has been implemented in Scilab [28]. The currentsimulator has been implemented only for P systems withprograms where all the rules have one of the following forms:

[ v ]l → [ v′ ]l, u [ ]l → [ v′ ]l, [ v ]l → u′ [ v′ ]l

that is, rules that do not allow the simultaneous rewriting ofobjects both inside and outside a membrane. As well as this,all the programs are supposed to be without conditions. Weaim at producing a full implementation of programs specifiedas in Definition 2.1 in a later version of the simulator, whichis now under development.

A colony of vibrio fischeri bacteria is modelled in [5]by considering a number of elementary membranes, eachone of them representing a bacterium, included in an uniquemain membrane, which represents the environment. Eachelementary membrane contains a model of the gene regulatorynetwork which controls the quorum sensing process in such abacterium. Here we do not illustrates the details of this modelfrom [5] but we just report the results of the simulations.

0.00 4.29 8.57 12.86 17.14 21.43 25.71 30.000.0

42.9

85.7

128.6

171.4

214.3

257.1

300.0

QUORATED BACTERIA

time

Quorated Bacteria

0 4 8 12 16 20 24 280

200

400

600

800

1000

1200

1400

1600

1800

ENVIRONMENT

time

OHHL

Fig. 1. Gillespie-like: The increase on the number of quorated bacteriain correspondence of the increase on the number of signal molecules in theenvironment.

Figure 1 reports the simulation results for a colony of 300bacteria obtained by using Gillespie’s algorithm implementa-tion. This shows how the implementation is able to reproducethe expected behaviour: the quorum sensing process takesplace through a progressive increase on the number of signal

Page 44: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

36

molecules in the environment that leads to an increase on thenumber of quorated bacteria.

V. CONCLUSIONS

We have introduced a class of P systems with boundedparallelism ans a framework for an operational semanticswhich captures different strategies of applying the rules basedon the notion of parallelism of type (k, q). This is particularlyimportant in the context of P system developments as itshows another way of evolving such systems opposed tothe maximal parallelism defined formally in a number ofapproaches dealing with semantics [2], [3]. It also unifiesa number of attempts to define variants of P systems withbounded parallelism, or relying on probabilistic behaviour.On the other hand refers to a specific class of functionsselecting membranes and programs to be executed, that arefully chemically and biologically motivated.

In terms of applications, our approach points out some key-issues which need to be addressed every time a new modelfor a biological system is developed:

• How do we represent the “reality” of the phenomenon ina P system model? Which variant of P systems must weconsider?

• What strategy for the application of the rules do we intendto adopt? What are the alternatives? How do we imple-ment them? How do we evaluate their performances?

• If a particular simulation does not reproduce the “ex-pected” behaviour, what do we need to change? Do weneed to change the model or do we need to try a differentstrategy for the application of the rules? How do thechoice of parameters affect the result of a simulation?

These questions can be answered only through empiricalresearch which attempts to match the results of a P systemsimulation with the results of biological experiments and/or theevidences resulting from other well-consolidated mathematicalmodels. On the other hand, more ambitious researches shouldbe directed to the development of appropriate “formal” valida-tion/verification techniques, which possibly would allow us toformulate reasonable hypotheses with respect to the behaviourof biological systems. Attempts to use model checking in thiscontext have been initiated by [2].

Acknowledgement. The authors wish to thank the anony-mous referees for their valuable comments.

REFERENCES

[1] Aho, A.V., Sethi, R., Ulmann, J.D. (1986). Compilers: Principles,Techniques, and Tools. Addison-Wesley.

[2] Andrei, O., Ciobanu, G., Lucanu, D. (2004). Executable Specificationsof P Systems. In [18], 126–145.

[3] Andrei, O., Ciobanu, G., Lucanu, D. (2005). Structural OperationalSemantics of P Systems. In: Pre-Proceedings of WMC6 - Vienna 2005,1–23 .

[4] Ardelean, I., Cavaliere, M. (2003). Playing with a Probabilistic PSimulator: Mathematical and Biological Problems. In: BrainstormingWeek on Membrane Computing, Tarragona, Feb 5-11 2003 (Cavaliere,M., Martin-Vide, C., Paun, Gh., eds.). Tech. Rep. 26/03, UniversitatRovira i Virgili, Tarragona, Spain, 37–45.

[5] Bernardini, F., Gheorghe, M., Muniyandi, R.C., Krasnogor, N., Perez-Jimenez, M.J., Romero-Campero, F.J. (2005). On P Systems as aModelling Tool for Biological Systems. In: Pre-Proceedings of WMC6- Vienna 2005, 193–213.

[6] Bernardini, F., Manca, V. (2003). P Systems with Boundary Rules. In:[23], 107–118.

[7] Besozzi, D. (2004). Computational and Modelling Power of P systems,Ph.D. Thesis, Universita degli Studi di Milano, Milan, Italy.

[8] Bianco, L., Fontana, F., Franco, G., Manca, V. (2005). P Systemsfor Biological Dynamics. In: Applications of Membrane Computing(Ciobanu, G., Paun, Gh., Perez-Jimenez, M.J., eds.), Springer-Verlag,Berlin, Heidelberg, New York, 81–126.

[9] Bianco, L., Fontana, F., Manca, V. (2005). P Systems and the Modellingof Biochemical Oscillation. In: Pre-Proceedings of WMC6 - Vienna2005, 214–225.

[10] Bianco, L., Fontana, F., Manca, V. (2005). Metabolic Algorithm withTime-varying Maps. In: Proceedings of the Third Brainstorming Weekon Membrane Computing. Sevilla (Spain), January 31 - February 4,2005. (Gutierrez-Naranjo, M.A., Riscos-Nunez, A., Romero-Campero,F.J., Sburlan, D.,eds.), University of Seville, Seville, Spain, 43–62.

[11] Ciobanu, G., Paun, Gh. (2005). The Minimal Parallelism is Still Uni-versal. Submitted.

[12] Dang, Z., Ibarra, O. (2005). On P Systems Operating in Sequential-Mode. International Journal of Foundations of Computer Science, toappear.

[13] Freund, R. (2005). Asynchronous P Systems and P Systems Working inthe Sequential Mode. In: [18], 36–62.

[14] Gibson, M.A., Bruck, J., (2000). Efficient Exact Stochastic Simulationof Chemical Systems with Many Species and Many Channels. Journalof Physical Chemistry, 104, 25, 1876–1889.

[15] Gillespie, D.T. (1977). Exact Stochastic Simulation of Coupled ChemicalReactions. The Journal of Physical Chemistry, 81, 25, 2340–2361.

[16] Ibarra, O.H., Yen H.C., Dang, Z. (2005). On Various Notions of Paral-lelism in P Systems. International Journal of Foundations of ComputerScience, 16, 4, 693–705.

[17] Karwowski, R., Prusinkiewicz, P. (2003). Design and Implementationof the L+C Modelling Language. Electronics Notes in TheoreticalComputer Science, 82, 2, 1–19.

[18] Mauri, G., Paun, Gh., Perez-Jimenez, M., J., Rozenberg, G., Salomaa,A., eds. (2005). Membrane Computing. International Workshop, WMC2004, Milan, Italy, June 2004. Revised and Invited Papers. Lecture Notesin Computer Science, 3365, Springer-Verlag, Berlin, Heidelberg, NewYork.

[19] Meng, T.C., Somani S., Dhar, P. (2004). Modelling and Simulation ofBiological Systems with Stochasticity. In Silico Biology, 4, 0024.

[20] Milner, R. (1999). Communicating and Mobile System: The π-Calculus.Cambridge University Press.

[21] Paun, Gh. (2000). Computing with Membranes. Journal of Computerand System Sciences, 61, 1, 108–143.

[22] Paun, Gh. (2002). Membrane Computing. An Introduction. Springer-Verlag, Berlin, Heidelberg, New York.

[23] Paun, Gh., Rozenberg, G., Salomaa, A., Zandron, C., eds. (2003).Membrane Computing. International Workshop, WMC-CdeA 02, Curteade Arges, Romania, August 19-23, 2002. Revised Papers. Lecture Notesin Computer Science, 2597, Springer-Verlag, Berlin, Heidelberg, NewYork.

[24] Perez-Jimenez, M.J., Romero-Campero, F.J. (2005). Modelling EGFRSignalling Cascade Using Continuous Membrane Systems. In: Proceed-ings of the Third International Workshop on Computational Methodsin Systems Biology 2005 (CMSB 2005) (Plotkin, G., ed.), University ofEdinburgh, Edinburgh, United Kingdom.

[25] Pescini, D., Besozzi, D., Zandron, C., Mauri, G. (2005). DynamicalProbabilistic P Systems: Definitions and Application. In: Proceedingsof the Third Brainstorming Week on Membrane Computing. Sevilla(Spain), January 31 - February 4, 2005. (Gutierrez-Naranjo, M.A.,Riscos-Nunez, A., Romero-Campero, F.J., Sburlan, D.,eds.), Universityof Seville, Seville, Spain, 275–287.

[26] Philips, A., Cardelli. L. (2004). A Correct Abstract Machine for theStochastic Pi-calculus. Electronical Notes in Theoretical Computer Sci-ence, to appear.

[27] Priami, C., Regev, A., Shapiro, E., Silverman, W. (2001). Application ofa Stochastic Name-Passing Calculus to Representation and Simulationof Molecular Processes. Information Processing Letters, 80, 25–31.

[28] Scilab Web Pages: http://scilabsoft.inria.fr.[29] The P Systems Web Page: http://psystems.disco.unimib.it.[30] The Stochastic Pi-Machine:

http://www.doc.ic.ac.uk/˜anp/spim/.

Page 45: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

Symbolic representations of biological oscillations

Luca Bianco, Vincenzo Manca and Simone ZorzanUniversity of Verona

Department of Computer Sciencestrada Le Grazie, 1537134 Verona, Italy

[email protected], [email protected]

Abstract

The investigation of biological dynamics involves manyinteresting aspects such as abstraction, modeling and simu-lation, but a very important aspect to consider is the rep-resentation of such dynamics. A correct, flexible and formalrepresentation mechanism of interesting behaviours is theright starting point for all successive modeling steps and itcan be helpful in capturing the essence of the system underinvestigation. In particular, provided a formal representationof the relevant traits of biological systems behaviours, theapplication of P systems to their modeling can become moreand more fruitful. For this reason, here we present a formalismallowing us to represent biological oscillations, by means ofstrings composed by parametric words that we call beats.

I. Introduction

Oscillations are a fundamental tool exploited by nature inmany biological systems (i.e., rhythms, cycles, modulations,and transduction signals), an excellent source of such systemsis [5]. In more general terms, oscillations are periodicalmachines and life is sustained by a complex network ofoscillators coordinated among them and with the environmentwhich provides the basic resources feeding vital cycles.

Periodicity is a very powerful computational characteristicand it is susceptible of many formulations, from elementarycycles up to complex forms of recurrence [8]. One of thecentral problems in the application of P Systems [10] tobiological systems is the realization of models able to captureand explain different kinds of oscillatory behaviours assumedby given biological systems [2], [3], [1], [7]. Nevertheless, thefundamental characteristics of such oscillations are often givenby the presence of typical patterns whose “shape”, rather thanspecific quantitative traits, is the most interesting subject ofinvestigation.

Marcus formalized, in terms of strings, several types ofperiodicity, relevant from the formal language theory pointof view [9], which were inspired from classical notions ofanalysis and celestial mechanics [4].

Here we follow this discrete trend about periodicity byintroducing a formalism permitting the representation of com-plex oscillations, typical of important biological phenomena;this can be done by using suitable strings handled by appro-priate operations.

II. Definitions

In this section we will introduce the notions of oscillationand beat. After this, we will focus on some particular formsof beat and define some operations on them that can be usefulto describe many complex oscillations.

Let us start with our main definitions:Definition 2.1: Given an observation function µ : T → R,

where T is a linearly ordered set of observation instants and R

is the set of real numbers, a triple of instants B = (t1, t2, t3) ∈R

3 is a beat for µ if the following holds:

(i) t1 ≤ t2 ≤ t3, with t1 6= t3;(ii) µ(t2) is a maximum/minimum in the interval [t1, t3];

(iii) the observation function µ has at most one monotonicitychange in [t1, t3];

(iv) µ(t1) ≤ µ(t3) if t2 is the maximum of µ in [t1, t3],µ(t1) ≥ µ(t3) otherwise.

A beat can be ascendant (and it is denoted by A) if µ(t2) isa maximum in [t1, t3], or it is descendant (D) if µ(t2) is aminimum in [t1, t3].

Definition 2.2: An oscillation is a sequence Γ =(t11, t

12, t

13) (t21, t

22, t

23) · · · (tn1 , tn2 , tn3 ) of beats in which, for

each i, 1 ≤ i ≤ n − 1:

• ti3 = ti+11 , that is, the last instant of a beat and the first

one of its next beat are coincident;• µ(ti3) = µ(ti+1

1 ).Definition 2.3: An elementary beat is a beat (t1, t2, t3)

characterized by the shape in Figure 1 that is determined bythe following parameters:

• x = t3 − t1 is the length of the lower base of the beat;• y = µ(t1) is the value of the observation function in t1;• u is the offset between lower base and upper base;• v is the height of the peak;• w is the length of the upper base;• z = |µ(t3) − y| is the height of the beat value in instant

t3 with respect to y.If we do not fix the value of t1, t2 and t3 in the set of instantsT , we get a “form of elementary beat” which is only identifiedby the values x, y, u, v, w, z and we write A(x, y, u, v, w, z) incase the beat is ascendant or D(x, y, u, v, w, z) if it is descen-dant. In the following, when we only fix the six parameters theterm beat has to be intended as form of beat. These beat formsare very convenient in the definition of operations which resultto be useful in the symbolic representation of oscillations.

Page 46: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

38

t3

¡¡¡¡

bbbb

t1

z = |µ(t3) − y|

y = µ(t1)

w

v

xu

Fig. 1. An ascendant beat and its parameters A(x, y, u, v, w, z).

In the next section we discuss some particular forms ofbeats, that can be used to represent more complex oscillatoryshapes.

A. Elementary beats

The general form of a beat expressed by Definition 2.1and depicted in Figure 1 is subject to many particular casesoriginating five peculiar beats that we call elementary beats.Let us analyze each one of them.

• Constant: can be expressed by means of the 6-tuplesA(x, y, 0, 0, x, 0) or D(x, y, 0, 0, x, 0), and is depicted inFigure 2.

• Isosceles triangle: is characterized by the following setsof parameters: A(x, y, x

2 , v, 0, 0) or D(x, y, x

2 , v, 0, 0),and it is represented in Figure 3.

• Isosceles trapezoid: its ascending and descending formscan be described by the two 6-tuples A(x, y, u, v, x −2u, 0) and D(x, y, u, v, x − 2u, 0), while its schematicrepresentation is depicted in Figure 4.

• Increasing angle: is parameterized by one of the twosymbols A(x, y, u, v, x − u, v) or D(x, y, u, v, x − u, v)and is portrayed in Figure 5.

• Decreasing angle: can be described by A(x, y, 0, 0, w, 0)or D(x, y, 0, 0, w, 0), in its ascending or descendingforms respectively. Both of them are depicted in Figure6.

y = µ(t1)t3t1

x

Fig. 2. A constant beat with parameters A(x, y, 0, 0, x, 0) orD(x, y, 0, 0, x, 0).

v

x/2

x

y

t3t1

v

\\\\¿

¿¿¿

\\

\\¿

¿¿¿

x/2

x

y

t3t1

Fig. 3. An ascendant (left) and descendant (right) isosceles triangle ofparameters (x, y,

x

2, v, 0, 0).

All of the elementary forms introduced (especially trapezoidsand triangles) can be generated by changing their parameters

t3

@@ ¡

¡

x − 2ux − 2u

u

t3

x

t1

y

v

u

v

y t1

x

¡¡ @

@

Fig. 4. An ascendant (left) and descendant (right) isosceles trapezoid ofparameters (x, y, u, v, x − 2u, 0).

t1%%%% \

\\\

w = x − u

v

yt1 t3

u

x

w = x − u

t3

x

u

y

v

Fig. 5. An ascendant (left) and descendant (right) increasing angle ofparameters (x, y, u, v, x − u, v).

t1

z

v

¿¿

¿¿e

eee

v

z

ww

t1 t3

x

t3

x

Fig. 6. An ascendant (left) and descendant (right) decreasing angle ofparameters (x, y, u, v, x − u, v).

in order to obtain all forms of trapezoids (note that the upperbase must remain an horizontal line) and triangles.

B. Oscillations as beat strings

Definition 2.2 states that an oscillation is a sequence of con-catenated beats. As previously said, beats can be described bysix parameters and by a type that can be ascending or descend-ing. For this reason we can represent an oscillation as a stringof parametric symbols of two different types (i.e., A and D).For example, two periods of a sine function can be representedby the concatenation of four beats B1 = (0, π

2 , π), B2 =(π, 3π

2 , 2π), B3 = (2π, 5π

2 , 3π), B4 = (3π, 7π

2 , 4π), withthe corresponding values of the sine function. By pass-ing to the string notation, we can represent the sametwo periods as a string A(x, y, u, v, w, z) D(x, y, u, v, w, z)A(x, y, u, v, w, z) D(x, y, u, v, w, z) or, provided the 6-tupleof parameters, as ADAD. Note that, due to the shape of thefunction we decided to use the same parameters for every beat(but in general this may not be done).

In Figure 7 an example of discretization by means of beatsof a sine function is depicted. Each beat is characterized bythe same set of parameters, that is, it can for example have theform: X(π, 0, 1, 0.85, 1.2, 0) with X ∈ {A,D}. Later on, we

Page 47: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

39

Fig. 7. A sine and its beats form, also representable as the string ADAD.

will see how the representation of an oscillation in terms of aparametric string can be a useful and powerful tool that allowsus to describe complex oscillations by using some features offormal languages.

C. Operations on beats

Here we introduce the set of operations performable onbeats and oscillations.

• Concatenation: given two (or more beats) B1 =(t1, t2, t3), B2 = (t′1, t

2, t′

3), the concatenation of beats(represented in Figure 8) originates an oscillation B1 ·B2

(or simply B1B2), the only requirements we ask forB1 and B2 are:

– t3 = t′1;– µ(t3) = µ(t′1).

Fig. 8. An example of beats concatenation, note the continuity of the functionµ in concatenation point of the resulting oscillation.

• Iteration: given an oscillation Γ its iteration Γn is theconcatenation of n copies of Γ. In other words theiteration can be defined as the iteration operator (in theclassical meaning of formal languages theory) defined onthe string associated to Γ. Moreover, we define Γ∗ =Γ1 ⊕ Γ2 ⊕ Γ3..., where ⊕ indicates the regular sum thatwe will discuss later on.

Fig. 9. An example of iteration between isosceles triangles.

Figure 9 depicts the iteration of a triangular beat of theform A(x, y, x

2 , v, 0, 0).• Indexed iteration: given a sequence of oscillations

〈Γ(i)〉, where each i ∈ I is an index, its indexed iteration∏

i∈IΓ(i) is the iterated concatenation of Γ(i). Each Γ(i)

is an oscillation with parameters depending on the valueof the index i.

Figure 10 represents an indexed oscillation of shape:4∏

i=1

A(x · 2i−1, y,x · 2i−1

2,

v

2i−1, 0, 0)

in other words, if the ith beat of the oscillation Bi isthe triangle A(x, y, x

2 , v, 0, 0), then Bi+1 is the triangleA(2x, y, x, v

2 , 0, 0).

Fig. 10. An example of indexed iteration between isosceles triangles withdecreasing height and increasing base.

• Sum: given an observation function µ, a beatB = (t1, t2, t3) and an oscillation O =〈(t11, t

12, t

13), ..., (t

n

1 , tn2 , tn3 )〉, both associated to µ,if

t3 − t1 = tn3 − t11 (1)

we define the C = B +O the oscillation obtained by thesuperposition of the upper base of B with the lower basethe oscillation O. Figure 11 represents an example of sum

Fig. 11. An example of beats sum.

between a beat B = (t1, t2, t3), that is depicted on the leftof the symbol +, and an oscillation O, composed by theconcatenation of two general beats. The only requirementwe impose on them is that the size of the upper base ofB and the length of the oscillation must be the same (inFigure 11 both of them are chosen equal to a certain valuex).Note that, in general, the sum is iterable along the verticaldirection, but due to the conditions on beats we can’t suma (non null) oscillation on a triangular beat. Moreover wecan think the subtraction in terms of sum of beats withdifferent types A or D.

• Regular sum: given the following n (n ∈ N) beats,B1, B2, ..., Bn, we define the regular sum O = (B1 ⊕B2 ⊕ ... ⊕ Bn) as one of the n possible beats Bi, 1 ≤i ≤ n. As seen in the case of the iteration, we can alsothink of this operation in terms of the regular sum (in theclassical meaning of formal languages theory) defined onthe string (X1 + X2 + ... + Xn), in which Xi, are theparametric symbols associated to Bi, with 1 ≤ i ≤ n.

• Indexed sum: the binary operator + is defined over thecouple (B,C) where B is a beat and C an oscillation.In particular a beat is an oscillation (the juxtaposition ofit with an empty beat), for this reason we can extendthe sum in case C is made by a single beat. Under this

Page 48: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

40

assumption we define the indexed sum as the iteratedsum of a series of beats sharing “the same shape”, butcharacterized by different parameters, changing from aniteration to the next according to some specified rules,where parameters have to fulfill equation (1).Given a beat X(x, y, u, v, w, z) we denote its indexedsum of order n with:

n∑

i=1

X(xi, yi, ui, vi, wi, zi)

where X ∈ {A,D} and (xi, yi, ui, vi, wi, zi) representsthe 6-tuple of parameters describing the beat at step i.Figure 12 depicts an example of indexed sum in whichthe starting beat is an ascending isosceles trapezoid withparameters A(x, y, x

4 , v, x

2 , 0). The iteration scheme forthe three iterations depicted in Figure 12 is defined bythe following formula:

4∑

i=1

A(x

2i−1, y + v · (i − 1),

x

2i+1, v,

x

2i, 0)

©©©©©©© HHHHHHHHHHHHHH@

@@@¡

¡¡¡¡¡¡¡¢¢¢¢ A

AAAAAAACCCC¤

¤¤¤

Fig. 12. An example of indexed sum between isosceles trapezoids ofdecreasing upper base.

The previous set of operations performable on beats andoscillations are useful to represent all forms of beats andoscillations, as we will see, by means of the beatisation ofan oscillation, the decomposition of an oscillatory function byusing a set of elementary beats.

D. Modules

By starting from elementary beats and applying to them theoperations defined above, we can obtain several more complexbeats than elementary ones, we call them derived beats ormodules.

• Hill: represents beats with progressively increasing (ordecreasing) slopes, until reaching the local maximum(minimum). Note that with the term slope we refer tothe inclination of the line connecting the lower base withthe upper base. The slope, provided that the beat is anisosceles trapezoid, is directly connected with the ratiov

u. An example of hill oscillation is the following:

n∑

i=1

A(x−2(i − 1), ki −i(i − 1)

2, i, k−i, x−2i, 0)

and it is represented in Figure 13. It is obtained by theprevious indexed sum in which n = 4, x = 15 andk = 4. For this reason we can parameterize this moduleas Hill(15, 4, 4). It turns out to be an instantiation ofthe module Hill(x, n, k), where x is the beat length,n is the number of iterations required to obtain it bymeans of the sum and k is a sort of scale factor for theheights of successive peaks. The same parameterizationtechnique can be easily extended to many forms obtainedby composing elementary beat forms.

• Bell: is originated by the sum of beats with slopes (orequivalently x

w) varying between two values, k and l. An

example of bell can be the following:

A0 +

n∑

i=1

A(wi−1, hi,l(i[2])+k((i + 1)[2]), h, wi−1−2u)

with n ≤ x/2 ÷ k, where:

– A0 = (x0, 0, uo, h, w0) is the initial beat;– x[2], with x ∈ N, represents x modulus 2;– ÷ is the integer division;

and it is depicted in Figure 14.• Cuspid: it is constituted by a sum of beats with a slope

quadratically increasing. An example of cuspid shapedbeat has been introduced previously in Figure 12.

• Plateau: it is originated by the concatenation of twobeats B1 = (t11, t

12, t

13) and B2 = (t21, t

22, t

23) in which

µ(t11) < µ(t13) = µ(t21) (or, if the beats are of type D,µ(t11) > µ(t13) = µ(t21)). In Figure 15 an example ofmany concatenated plateaus is depicted. They can be usedto represent, according to the strategy defined in the nextsection, the function 2 + |sin(x + π)5| + 2cos(x + π).In general we can think of symmetric and asymmetricplateaus. The former case is obtained whenever the heightof the peak is the same for both beats, the latter case isobtained when this condition is not respected.

• Ridge: in one of it most simple formulations it can becharacterized by the iterated concatenation of beats inwhich z > 0. An example of ridge in which v − z is aconstant value is represented by:

n∏

i=1

A(x, y + c(i − 1), u, h, w, z)

the condition on v − z assures the same ascending slopefor all consecutive beats as depicted in Figure 16.

CCCC¤

¤¤¤

­­­ J

JJ

´´ Q

QQ

»»»»»»»» XXXX

Fig. 13. An example of hill as beats sum.

Page 49: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

41

´´´´ Q

QQQQQQ

QQQ

AAAA¢

¢¢¢¢¢¢¢´´´´ Q

QQQQ

Fig. 14. An example of bell shaped beat in which x = 15, k = 3 and l = 1.

Fig. 15. An example of iterated plateaus.

v

z

z

z¢¢¢¢ AA¢

¢¢¢ AA¢

¢¢¢ AA¢

¢¢¢ AA¢

¢¢¢ AA¢

¢¢¢ AA

v

v

Fig. 16. A ridge shaped oscillation obtained by iterated concatenation ofbeats.

III. Beatisation of oscillatory functions

Here we propose a strategy for uniquely decomposing anoscillatory observation function µ (defined over a linearlyordered set) into a sequence of beats. It uses a threshold ε (ora set of thresholds, one for every beat necessary to cover thewhole space of oscillation), whose role will be clear later on.In order to explain how to decompose an observation functioninto a concatenation of beats we have to explicitly partition theinput space into a certain number of consecutive intervals, eachone of them containing a beat. After this we have to specify allthe parameters of every beat. Note that, we followed implicitlythis strategy in the example discussed in Figure 7. The strategyfor partitioning the input space of µ into a set of continuousbeats is the following:

• set initial instant t01 of the first beat to the minimum t ofthe domain of µ (remember that it is an ordered set);

• starting from t01 extend the interval of the first beat fromleft to right (following the order of the domain of µ) aslong as all conditions of Definition 2.1 are respected;

• assign t03 to the last instant satisfying conditions of

Definition 2.1;• find t ∈ [t01, t

03] s.t. ∀ t′ ∈ [t01, t

03] : µ(t) ≥ µ(t′) if the

concavity of µ is downward (find t ∈ [t01, t03] s.t. ∀ t′ ∈

[t01, t03] µ(t) ≤ µ(t′) if the concavity of µ is upward) set

t02 to t;• repeat the same for all other beats needed to partition

the input space of µ, but now for each of them set its t1instant to the value of instant t3 of its preceding beat.

Then we specify all the parameters beat by beat. In this phasewe will use of the threshold ε. Given a generic beat B =(x, y, u, v, w, z) representing a single period of an oscillation,we set:

• x = t3 − t1• y = µ(t1)• w is the size of the maximum interval [t∗, t∗∗] ⊆ [t1, t3]

in which: ∀ t ∈ [t∗, t∗∗], |µ(t)− µ(t2)| ≤ ε, where ε is aspecified threshold;

• u is the size of the interval [t1, t∗] decreased by one;

• v = mint∈[t,t∗∗] µ(t) if B is an ascendant beat, v =maxt∈[t,t∗∗] µ(t) if B is a descendant beat;

• z = |µ(t3) − y|

The beatisation traced so far can be considered as workingalong the horizontal direction, but we can extend it to workalong the vertical direction, in order to improve the accuracyof the beatisation. The vertical refinement, obviously, has tobe done by means of superpositions of several beats and it hasto undergo the constraints expressed by equation (1). We canalso specify a vertical threshold of accuracy in order to tunethe refinement of the beatisation.

A. Examples of Beatisation

In this section we will give two examples of waveformbeatisation, using the strategy previously introduced. Emphasiswill be given to the modules corresponding to phenomenonperiod.

The first example is the beatisation of the periodic be-haviour observed in an allosteric glycolic reaction (featured in[5]), a ‘bursting’ oscillation (i.e. an oscillation characterizedby the regular alternation between active phases of spiking andphases of relative quiescence).

In Figure 17 (a) the values of substances α (substrate) and γ

(product) are represented in relationship with the value of thesource of substrate v, while in Figure 17 (b) their beatisationis reported.

The module indicated in Figure 17 (b) corresponds to theperiod of oscillation for α and γ in dependence of v, that is theperiod with which the values α and γ show the same sequenceof values. We use a complex module to represent effectivelythe oscillation. It is made up by the concatenation of severalbeats, the first one is obtained by the sum of two ascendingbeats (a triangular beat P1 and a trapezoid T1) (for the phasein which the behaviour is less spiking). The spiking phaseis obtained by the concatenation of nine modules having theshape D1A1. Finally three distinct ascending triangular beats(i.e., T3, T4 and T5) follow the spiking phase. We can nowrepresent the module for the oscillation of α in Figure 17 (b),as:

Page 50: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

42

Fig. 17. Values of product γ and substrate α in a biochemical system withvariation of the source of v, a second substrate (a) and its beatisation form(b).

[(T1 + P1)(D1A1)9(T2 + P2) + T3T4T5]

The spiking phase of the module for the oscillation of γ

is similar to the same phase for α, this makes possible theexpression of the two phases just varying the parameters oftriangular beats in the submodule D1A1.

The next example deals with the value of the concentrationof the erk2 protein [6], present for example in the signaltransduction network of the Dictostelium Discoideum (aneukaryotic amoeba capable of chemotaxis, locomotion andphagocytosis in a way extremely similar to immune cells suchas dendritic cells and macrophages), as a response to themodification of the environment, in the form of a variation inthe concentration of a molecule the Dictostelium is sensitiveto.

The values of erk2 concentration are represented in Figure18 along with its representation with beats.

Fig. 18. Oscillations of value of erk2 in the signal transduction network ofDictostelium Discoideum, and its beatisation.

The beatisation is performed using constant beats beforeand after the oscillatory phase. In the latter case we use amodule that is similar to the submodule used in the previous

example and is composed by two triangular beats, of type Dand A (as also depicted in Figure 18).

Assuming that the values of the peaks in the oscillationsvary according to two suitable functions φ and φ′ and indicat-ing with C1 and C2 the two constant beats before and afterthe oscillatory phase (made up by 38 distinct beats), we canexpress the oscillation describing the value of erk2 as:

C1

38∏

i=1

(D(x, y, u, φ(ti), 0, 0)A(x, y′, u, φ′(ti), 0, 0))C2

where D(x, y, u, φ(ti), 0, 0)A(x, y′, u, φ′(ti), 0, 0) is themodule for the spiking phase and ti is the value of point t2of the ith beat.

IV. Conclusion and ongoing research

Starting from the observation that sometimes the ‘shape’ ofthe oscillation is more crucial than the microscopic quantitativedetails, we have proposed a new representation formalism forthe description of oscillatory dynamics for biological systems.This approach is inspired from formal language theory andits aim is to represent oscillatory behaviours by means ofparametric strings. We showed a simple strategy for therepresentation of a dynamics in terms of a beats representation(we called this operation beatisation) and we presented hereits application to two biological dynamics.

We believe that this preliminary work can be extended inseveral ways and can eventually be applied to many interestingcontexts. From a modeling point of view, it may also bechallenging to start from a parametric string representingthe behaviour of a particular system and to find out somecorresponding P system able to reproduce such a dynamics.

Moreover, we think it may be interesting to consider thebeatisation of biological data with the perspective of em-ploying the string representation obtained, for characterizingpathological behaviours by means of well known formallanguage theory tools (recognizing and generative devices) inthe specific contexts of parametric beat strings.

We plan to concentrate our efforts to the beatisation strategyin order to get more flexibility in the application of manydifferent biological systems.

References

[1] D. Besozzi and G. Ciobanu. A P system description of the sodium-potassium pump. In G. Mauri, Gh. Paun, M. J. Perez-Jimenez, G. Rozen-berg, and A. Salomaa, editors, Membrane Computing, 5th InternationalWorkshop, WMC 2004, LNCS 3365, (2005), pages 210–223.

[2] L. Bianco, F. Fontana, G. Franco, and V. Manca. P systems for biologicaldynamics. In G. Ciobanu, Gh. Paun, and M. J. Perez-Jimenez, editors,Applications of Membrane Computing. Springer, Berlin, 2005, pages81–126.

[3] L. Bianco, F. Fontana, and V. Manca. P systems with reaction maps.International J. of Fundations of Computer Science. To appear, 2005.

[4] J. Favard. Lecons sur les fonctions presque-periodiques. Gauthier-Villars, Paris, France, 1933.

[5] A. Goldbeter. Biochemical Oscillations and Cellular Rhythms. Themolecular bases of periodic and chaotic behaviour. Cambridge Uni-versity Press, New York, 2004.

Page 51: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

43

[6] C. Kosaka and C. J. Pears. Chemoattractants induce tyrosine phos-phorylation of erk2 in dictyostelium discoideum by diverse signallingpathways. Biochem. J., 324:347–352, 1997.

[7] V. Manca, L. Bianco, and F. Fontana. Evolutions and oscillations ofP systems: Theoretical considerations and applications to biochemicalphenomena. In G. Mauri, Gh. Paun, M. J. Perez-Jimenez, G. Rozen-berg, and A. Salomaa, editors, Membrane Computing, 5th InternationalWorkshop, WMC 2004, LNCS 3365, (2005), pages 63–84.

[8] V. Manca, G. Franco, and G. Scollo. String transition dynamics - basicconcepts and molecular computing perspectives. In M. Gheorghe, editor,Molecular Computational Models - Unconventional Approaches. IdeaGroup, 2005, pages 32–55.

[9] S. Marcus. Quasiperiodic infinite words. Bulletin of the EuropeanAssociation forTheoretical Computer Science (EATCS), 82:170–174,2004.

[10] Gh. Paun. Membrane Computing. An Introduction. Springer, Berlin,Germany, 2002.

Page 52: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

44

Page 53: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

45

Abstract— This paper presents the first step in the design of a

hardware circuit implementing evolution inside membranes of a transition P system. The work presented here is part of a very ambitious project: to find and to implement a hardware system, as general as possible, able to simulate P systems evolution. Due to the complexity of this generic system, the process has been divided into several stages. Each one of these stages has concrete objectives. In particular, a circuit able to determine active rules in a determined configuration for the membrane is presented here. In order to proceed in an appropriate manner, it is needed to define a data structure containing information about the initial membrane state, that is, the initial multiset of objects, the set of evolution rules and the corresponding priority relation among them. The circuit takes these data entrances and then produce as output a set of evolution rules, active rules, which are able to produce the needed changes into the system in order to make evolve it to the next configuration.

Keywords—Bio-membranes, Circuit design, Digital systems, Field programmable gate arrays, Membrane Computing.

I. INTRODUCTION he current silicon computers are close to the imposed

limits by the laws of the physics. The miniaturization process of needed components to increase the process speed and the storage capacity are close to be reached. The barrier of the petaflops (1015 operations per second) necessary for complex simulation problems and for many AI problems will not be reached with classical silicon parallel computers.

The new proposed models of bio-molecular (with DNA, RNA, proteins, or with membranes) and quantum computing maybe do not substitute silicon semiconductors. However, in the future, they will be probably very powerful technologies for advanced parallel super-computation. These new unconventional models are not simple improvements of the

1 Departamento de Lenguajes, Proyectos y Sistemas Informáticos

Escuela Universitaria de Informática Universidad Politécnica de Madrid

{setillo,farroyo}@eui.upm.es 2 Departamento de Arquitectura y Tecnología de los Computadores

Escuela Universitaria de Informática Universidad Politécnica de Madrid

[email protected] 3 Departamento de Organización y Estructura de la Información

Escuela Universitaria de Informática Universidad Politécnica de Madrid

[email protected]

previous ones. Moreover, their potential advantages come from the inherent parallelism of the biological or physical processes they are inspired by.

P systems (Membrane Systems, see [5]) are a class of distributed, massively parallel and non-deterministic systems based on biological membranes. They are inspired in the way cells process chemical compounds, energy and information. These processes can be viewed as computational processes. Nowadays, P systems have been sufficiently characterized form a theoretical point of view. Their computational power has been settled -- many variants are computationally complete. However, the way in which these models can be implemented is an open problem today. As usually happens, implementation of these systems has been attacked from two different approaches: software and hardware models. However, the hardware model seems to be the most appropriate –apart from the biological implementation-- able to obtain the massive parallelization P systems claim.

There are many papers about software tools implementing different P system variants, but in the case of P systems hardware implementation, only a few references can be found in the literature: Connectivity arrays for membrane processors [1], multisets and evolution rules representation in membrane processors [2] or even a hardware membrane system description using VHDL [6].

In hardware design is very important to exactly define the model for data representation in the system and to determine the initial state and the different possibilities for system evolution. Once this it is established, the general objective for the system is defined as a functional block, that is, the system is fed with inputs and the functional block must produce the appropriate output according to the previously established ideas in the design phase. Part of this work has been done in [1] and [3]. The next steps are to design the registers transfer (RT) and the logical and physical level. In these phases, the procedure for moving data among registers and logical units through system buses is described. Logical design is related to basic components (logical gates, flip-flops, etc.) and the way in which they are combined in order to obtain complex components (registers, control unit, logical unit, etc.)[4]. Finally, the result of the whole process is to obtain a list of nodes and connection lines (Netlist) that in the physical design is translated to a transistors list. The Netlist is used in the final production process of the circuit.

A Hardware Circuit for Selecting Active Rules in Transition P Systems

Luis Fernández1; Víctor J. Martínez2; Fernando Arroyo1 and Luis F. Mingo3

T

Page 54: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

46

II. THE MODEL FOR DATA REPRESENTATION Transition P systems are the basic variant of membrane

systems; however, they define the basic structure and the main components for many variant of P systems -the hierarchical membrane structure, multisets of objects, evolution rules, priorities, actions δ and τ. Hence, they are very interesting in order to define the hardware implementation of these kinds of systems. Most of these elements are also present in many different membrane systems. These systems perform a computation through transition between two consecutive configurations. As it is well known in membrane computing, a configuration consists in an m-tuple of multisets present at any moment in the existing m regions of the system at that moment. Transitions between two configurations are performed by using evolution rules present in each region of the system in a non-deterministic maximally parallel manner. If the system reaches a configuration in which there are no applicable rules at any membrane, it is said that the system reaches a halting configuration, and hence, the computation is successful [5].

The final purpose of this work is to implement in a hardware circuit the whole process performed inside a membrane in a Transition P system. In order to do this, first it is needed to define a model for representing the input and output data in a suitable manner and to make some restrictions on the number of components, e.g. the cardinal of the alphabets and the sets of evolution rules, the number of occurrences for each one of the objects present inside the membrane, the number of children membranes, etc. The chosen representation for multisets of objects and evolution rules is based in [2].

Accordingly to these specifications, the model should: • Specify the cardinality of the alphabet O limited to 10.

O = {a,b,c,d,e,f,g,h,i,j} • Specify the multiset of objects associated to the

membrane i, iω . It is internally represented in a hardware register of 4-bits words of length 10; each position in the register represents the number of occurrences for each one of the objects belonging to the alphabet in a predetermined order.

• Specify the finite set of evolution rules Ri associated to the membrane i. Each evolution rule is represented by a set of 12 hardware registers representing multiset of objects as above. The first one represents the antecedent and the following ones represent the multiset of objects that the rule sends to out, here, and the children membranes enumerated from a to j in that order.

Extra information is needed to determine applicability of rules. One 10-binary register is added for the membrane structure, existence register, for determining whether or not there exist children membranes for the next evolution step.

To specify the priority relation ρi among the rules Ri, a square array of bits is used. Each position determines whether or not two rules are related in the following way: if the bit at the position (i,j) is equal to zero means that ri has not priority over rj in ρi; otherwise, if (i,j) is equal to one means that ri has priority over rj in ρi.

III. GENERAL STRUCTURE OF THE CIRCUIT The circuit here presented is related to determine which of

the evolution rules present inside a membrane are active accordingly to the multiset of objects present in the membrane. In this section the general structure of the circuit is presented in terms of functional units and the input data for solving this particular problem (see Fig. 1).

In transition P systems, an evolution rule r : u→ v, is a tuple (u, v), where u is a multiset of objects over O; v = v’ or v = v’δ were v’ is a multiset of objects over the set O×TAR, TAR={here, out}∪{inj | 1 ≤ j ≤ m} and δ is a special symbol not in O indicating the dissolving capability of the rule.

Fig. 1: General structure of the circuit and the corresponding inputs to the different functional units.

There are three conditions that rules must accomplish in order to be active in a determined evolution step:

1) Applicable rules are those rules accomplishing that their antecedent is included in the multiset of objects (ω) present inside the membrane. The circuit delegates this rule selection into a functional unit named Applicable Functional Unit (ApplicableFU).

2) Useful rules are those rules that send objects only to existing inner membranes. The circuit delegates this selection into a functional unit named Useful Function Unit (UsefulFU).

3) Active rules are those rules accomplishing that they are applicable and useful and there is no applicable and useful rule with a higher priority inside the membrane. Hence, we need one more functional unit named Active

Page 55: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

47

Functional Unit (ActiveFU) in charge of selecting the active rules in the membrane.

The depicted circuit in Fig. 1 outputs the set of actives rules according to the corresponding data input from the membrane. The next sections are devoted to define the different functional units taking part of this general circuit.

IV. APPLICABLE FUNCTIONAL UNIT This functional unit is in charge of determining which rules

present inside a region are applicable in a determined evolution step. As it was stated in the previous section, such rules must accomplish that their antecedent is included in the multiset of objects present inside the membrane at that evolution step. We now present the hardware design of the Applicable Functional Unit, in terms of logical gates and additional magnitude comparators.

Let m0, m1, ... , m9 be the decimal values representing the multiplicity of the objects a, b,..., j respectively in the multiset of objects ωi and let r00, r10, ..., r90 be the decimal values representing the multiplicity of the objects a, b,..., j in the antecedent of an evolution rule R0:

The next figure shows the circuit, in positive logic, in order to determine whether or not an evolution rule R0 is applicable.

Fig. 2: Applicable circuit for one evolution rule.

For every rule present in the membrane, an identical circuit is needed in the functional unit.

V. USEFUL FUNCTIONAL UNIT This functional unit is in charge of determining which

rules, present at a determined evolution step inside the membrane, are useful. As it was stated above, a rule is useful if and only if it sends objects only to existing inner

membranes in the current configuration of the P system. Fig. 3 shows a circuit diagram for determining whether or not a given rule R0 is useful. The circuit compares each of the multisets that the rule sends to the children membranes with the empty multiset in order to check whether or not the rule sends objects to the corresponding membrane. Finally, the binary operator AND checks if the rule sends objects to non-existing membranes. Once again, the UsefulFU is composed by one of these circuits per rule present inside the membrane.

Fig. 3: Useful circuit for one evolution rule.

VI. ACTIVE FUNCTIONAL UNIT Active Functional Unit (ActiveFU) determines, for each

membrane in the system, the set of evolution rules that can be used in order to make evolve the system to the next configuration. The selection of active rules inside a membrane needs to have previously determined the sets of applicable and useful rules inside the membrane. These two requisites have been implemented by the respective ApplicableFU and UsefulFU functional units which provide the corresponding answer (0 -> no, 1 ->yes) for every rule present in the membrane and for every functional unit.

After that, it is also needed to select among applicable and useful rules those with higher priorities. Fig. 4 shows the circuit for determining actives rules.

VII. CONCLUSIONS AND FUTURE WORK This paper presents a direct way for implementing a

hardware circuit accomplishing the outlined initial requirement. That is, given an initial multiset of objects and a

Page 56: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

48

finite set of evolution rules with a priority relationship defined among them, the circuit provides the set of active rules for a membrane. The hardware implementation is based on basic components like registers and logical gates. The development of the digital system can be implemented using hardware-software architectures like Handel C or VHDL. The physical implementation can be carried out on hardware programmable devices type FPGA using Celoxica platforms (RC10) [7]. The next step in the process for developing a membrane processor is to design a circuit able to simulate the process of application in a non-deterministic and massively parallel application of active rules inside the membrane.

REFERENCES [1] F. Arroyo, C. Luengo, J. Castellanos, L.F. de Mingo: A binary data

structure for membrane processors: Connectivity arrays, Artiom Alhazov, Carlos Marín-Vide and Gheorghe Pǎun (eds.): Preproceedings of the Workshop on Membrane Computing, Tarragona, July 17-22

2003, 41-52 and in (Carlos Marín-Vide, Giancarlo Mauri, Gheorghe Pǎun, Grzegrorz Rozenberg, Arto Saloma Eds.) Lecture Notes in Computer Science, 2933, Springer Verlag, 2004, 19-30.

[2] F. Arroyo, C. Luengo, J. Castellanos, L.F. de Mingo, Representing Multisets and Evolution Rules in Membrane Processors, Pre-proceedings of the Fifth Workshop on Membrane Computing (WMC5), Milano, Italy, June 2004, 126-137.

[3] M.A.Gutiérrez-Naranjo, M.J.Pérez-Jiménez, A.Riscos-Núñez. A simulator for confluent P systems. Proceedings of the Third Brainstorming Week on Membrane Computing, Sevilla (Spain), January 31st - February 4th, 2005, 169-184.

[4] P. Michel, U. Lauther & P. Duzy (Ed.): The synthesis approach to digital systems design. Kluwer Academic Publishers, 1992.

[5] Gh. Păun, Computing with membranes, Journal of Computer and System Sciences, 61 (2000), and Turku Center for Computer Science-TUCS Report No 208, 1998.

[6] B.Petreska, C.Teuscher, A hardware membrane system. Preproceedings of the Workshop on Membrane Computing (A.Alhazov, C.Martín-Vide and Gh.Paun, eds) Tarragona, July 17-22 2003, 343-355.

[7] http://www.celoxica.com

Fig. 4: Active circuit for evolution rules

Page 57: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

49

P Colonies Working in the Maximally Parallel andin the Sequential Mode

Rudolf FREUND and Marion OSWALDFaculty of Informatics

Vienna University of TechnologyFavoritenstr. 9-11, A-1040 Wien, AUSTRIA

Email: {rudi,marion}@emcc.at

Abstract— We consider P colonies as introduced in [4] andinvestigate their computational power when working in themaximally parallel and in the sequential mode. It turns outthat there is a trade-off between maximal parallelism andchecking programs: Using checking programs (i.e., prioritieson the communicaton rules in the programs of the agents), Pcolonies working in the sequential mode with height at most5 are computationally complete, whereas when working in themaximally parallel mode, P colonies (again with height 5) alreadyobtain the same computational power without using checkingprograms. Moreover, when allowing an arbitrary number ofprograms for each agent, we can prove that P colonies with onlyone agent (thus these P colonies are working in the sequentialmode) are already computationally complete. Finally, P colonieswith an arbitrary number of agents working in the sequentialmode as well as even P colonies with only one agent usingan arbitrary number of non-checking programs characterizethe family of languages generated by matrix grammars withoutappearance checking.

I. INTRODUCTION

In [4], a class of membrane systems (introduced in [6]and currently called P systems; see [7] for a comprehensiveoverview and [9] for recent developments) similar to so-called colonies of simple formal grammars (introduced in [3];see also [1] for basic elements of grammar systems), wasintroduced as P colonies.

Taking the idea of components that are as simple as possibleand act in a shared environment, independent cells are thebasic computing agents in the formal model of P colonies.Each agent is associated with a multiset of objects and witha set of rules. In the specific model introduced in [4], at eachmoment, only two objects are allowed to be inside any agent.

Each program assigned to an agent consists of an evolutionrule of the form a → b, transforming an internal object a

into b, as well as a communication rule of the form c ↔d, exchanging the internal object c with the object d takenfrom the environment. Hence, for each agent, a pair of rules〈a → b, c ↔ d〉 is called a program. Thus, if the agent containsthe objects a, c, after applying this program it will contain theobjects b, d. In one time unit both rules have to be applied,one for the evolution and one for communication with theenvironment.

At the beginning of the computation, all objects from theenvironment (that are supposed to be present in an unbounded

number) as well as the two objects initially present inside ofeach agent are identical with the same generic object e.

In [4], a non-trivial capability is added to the agents:they can check for the appearance of a given object in theenvironment by programs of the form 〈a → b, c ↔ d/c′ ↔ d′〉that are called checking programs. Here again, one evolutionrule and one communication rule are applied at the sametime, but the communication rule can be chosen from twopossibilities, with the first one having a higher priority, thus,P colonies using checking programs will also be called Pcolonies with priorities in this paper.

Hence, a P colony consists of a finite number of agents(identified by their sets of programs) placed in a commonenvironment where arbitrarily many copies of e are present.

In [4], P colonies were shown to be computationally com-plete when using an unbounded number of agents not contain-ing more than five programs each when working in a maxi-mally parallel way, i.e., in each moment, each agent whichcan apply any of its programs has to non-deterministicallychoose one and apply it, until no agent can apply any of itsprograms anymore (with such a halting computation, a resultis associated in the form of the number of copies of a dis-tinguished object in the environment). On the other hand, twoagents were shown to be sufficient for obtaining computationalcompleteness when using an unbounded number of programs.

After some preliminary definitions, we here show thatP colonies even when working in the sequential mode arecomputationally complete when using an unbounded numberof agents with no more than five programs each. Withoutusing checking programs (i.e., without priorities) we obtain asimilar result for P colonies working in the maximally parallelway. P colonies with only one agent working with an arbitrarynumber of checking programs are shown to be computationallycomplete, too. On the other hand, P colonies without priorities(with one agent or with an arbitrary number of agents workingin the sequential mode) characterize the family of languagesgenerated by matrix grammars without appearance checking.

II. PREREQUISITES

In this section, we give some preliminary definitions, con-sider basic facts of register machines and matrix grammars.

Page 58: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

50

A. Preliminary Definitions

The set of non-negative integers is denoted by N. Analphabet V is a finite non-empty set of abstract symbols. GivenV , the free monoid generated by V under the operation ofconcatenation is denoted by V ∗; the empty string is denotedby λ, and V ∗ − {λ} is denoted by V +. By |x| we denotethe length of the string x over V. The family of recursivelyenumerable languages is denoted by RE.

Let {a1, ..., an} be an arbitrary alphabet; the number ofoccurrences of a symbol ai in x is denoted by |x|

ai; the

Parikh vector associated with x with respect to a1, ..., an is(|x|

a1, ..., |x|

an

). The Parikh image of a language L over

{a1, ..., an} is the set of all Parikh vectors of strings in L.For a family of languages FL, the family of Parikh imagesof languages in FL is denoted by PsFL. A (finite) multiset〈m1, a1〉 ... 〈mn, an〉 with mi ∈ N, 1 ≤ i ≤ n, is representedas any string x the Parikh vector of which with respect toa1, ..., an is (m1, ...,mn) .

In the following we will not distinguish betweena vector (m1, ...,mn) , its representation by a multiset〈m1, a1〉 ... 〈mn, an〉 or its representation by a string x withParikh vector

(|x|

a1, ..., |x|

an

)= (m1, ...,mn) .

For more notions as well as basic results from the theoryof formal languages, the reader is referred to [2] and [8].

B. Register machines

A register machine is a construct M = (m,P, l0, lh) wherem is the number of registers, P is a finite set of instructionsinjectively labelled with elements from a given set lab (M),l0 is the initial/start label, and lh is the final label.

The labelled instructions are of the following forms:– l1 : (A (r) , l2, l3)

Add 1 to the contents of register r and proceed to theinstruction (labelled with) l2 or l3. (We say that we havean ADD instruction.)

– l1 : (S (r) , l2, l3)If register r is not empty, then subtract 1 from its contentsand go to instruction l2, otherwise proceed to instructionl3. (We say that we have a conditional SUB instruction.)

– lh : halt

Stop the machine. The final label lh is the only oneassigned to this instruction.

Without loss of generality, one can assume that in each ADDinstruction l1 : (A (r) , l2, l3) and in each conditional SUBinstruction l1 : (S (r) , l2, l3) the labels l1, l2, l3 are mutuallydistinct.

The following result already follows from the results provedin [5]:

Proposition 1: Let L ⊆ Nβ be a recursively enumerable setof (vectors of) non-negative integers. Then L can be generatedby a register machine with at most β + 2 registers; moreover,at the beginning of a computation, all registers are empty; theresults of a halting computation appear in the first β registers.

Moreover, we call a register machine partially blind, if weinterpret a subtract instruction in the following way:

– l1 : (S (r) , l2, l3)If register r is not empty, then subtract one from itscontents and go to instruction l2 or to instruction l3. (Wesay that we have an unconditional SUB instruction; ifregister r is empty when attempting to decrement registerr, then the program ends without yielding a result).

When the register machine reaches the final state, the resultsobtained in the first (β) register(s) are only taken into accountif the remaining registers are empty (in some sense this meansthat although during the computation we cannot check aregister for zero, at the end of a computation we can checkthose registers for zero that do not contain a result). Thefamily of sets of vectors of non-negative integers generatedby partially blind register machines is denoted by NRMpb.

C. Matrix grammars

A context-free matrix grammar (without appearance check-ing) is a construct G = (N,T, S,M) where N and T aresets of non-terminal and terminal symbols, respectively, withN ∩ T = ∅, S ∈ N is the start symbol, M is a finite setof matrices, M = {mi | 1 ≤ i ≤ n}, where the matrices mi

are sequences of the form mi = (mi,1, . . . ,mi,ni), ni ≥ 1,

1 ≤ i ≤ n, and the mi,j , 1 ≤ j ≤ ni, 1 ≤ i ≤ n, are context-free productions over (N,T ). For mi = (mi,1, . . . ,mi,ni

) andv, w ∈ (N ∪ T )

∗ we define v =⇒miw if and only if there

are w0, w1, . . . , wni∈ (N ∪ T )

∗ such that w0 = v, wni= w,

and for each j, 1 ≤ j ≤ ni, wj is the result of the applicationof mi,j to wj−1. The language generated by G is

L (G) = {w ∈ T ∗ | S =⇒mi1w1 . . . =⇒mik

wk,

wk = w, wj ∈ (N ∪ T )∗

,

mij∈ M for 1 ≤ j ≤ k, k ≥ 1

}.

The family of languages generated by matrix grammarswithout appearance checking is denoted by MAT λ. It isknown that PsMAT λ ⊂ PsRE. Further details about matrixgrammars can be found in [2] and in [8]. We only mentionthat the power of matrix grammars is not decreased if we onlywork with matrix grammars in the f-binary normal form whereN is the disjoint union of N1, N2, and {f}, and M containsonly rules of the following forms:

1) (S → XA), with X ∈ N1, A ∈ N2;2) (X → Y,A → x), with X,Y ∈ N1, A ∈ N2,

and x ∈ (N2 ∪ T )∗, |x| ≤ 2;3) (X → f,A → x), with X ∈ N1, A ∈ N2,

and x ∈ (N2 ∪ T )∗, |x| ≤ 2;4) (f → λ).

Moreover, there is only one matrix of type 1 and only onematrix of type 4 (in a derivation yielding a terminal result, theapplication of this rule is the last step).

Page 59: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

51

D. P colonies

A P colony is a construct

Π = (V, e, T,B1, ..., Bn)

where V is an alphabet (its elements are called objects), e isa distinguished object of V (the environmental object), T ⊆V − {e} is a set of final objects, and B1, ..., Bn are agents;each agent Bi is a pair Bi = (Oi, Pi), where Oi is a multisetover V (the initial state of the agent), and Pi is a finite set{pi,1, ..., pi,ki

} of programs; each program pi,j is either a non-checking program of the form 〈a → b, c ↔ d〉, or a checkingprogram of the form 〈a → b, c ↔ d/c′ ↔ d′〉. In what follows,we always assume that each Oi consists of two copies of e.

At the beginning of a computation performed by a given Pcolony, the environment contains arbitrarily many copies of e;moreover, each agent contains two copies of e. At each stepof the computation, the contents of the environment and ofthe agents change in the following manner: In the maximallyparallel derivation mode, each agent which can use any ofits programs should use one (non-deterministically chosen),whereas in the sequential derivation mode, one agent usesone of its programs at a time (non-deterministically chosen).By using a program 〈a → b, c ↔ d〉, an agent with objects ac

inside and with d in the environment will get the objects bd

inside and c will now be placed into the environment. Using aprogram 〈a → b, c ↔ d/c′ ↔ d′〉 means to pass from ac insideand d outside to bd inside and c outside, and this should bedone whenever possible; if the interchange c ↔ d cannot bedone, then we pass from ac′ inside and d′ outside to ad′ insideand c′ outside. Note that the first rule is always applied, andthat either the first or the second communication rule has tobe applied, with priority for the first one.

Any copy of an object can be involved in only one rule.Using the programs in this way, with all agents acting simul-taneously or sequentially, non-deterministically choosing theprogram(s) to be applied, we can pass from one configurationof the system (represented by the contents of the agents and ofthe environment) to another configuration. Formally, a config-uration can be written as an (n+1)-tuple (w1, ..., wn;wEeω),with wi ∈ V 2 representing the objects from agent i, 1 ≤ i ≤n, and wE ∈ (V − {e})∗, representing the objects from theenvironment different from the “background” object e; eω isused as notation for the arbitrarily many copies of the objecte that are always contained in the environment; the initialconfiguration of a system is always (ee, ..., ee; eω). A sequenceof transitions is called a computation. A computation is said tobe halting, if a configuration is reached where no program canbe applied anymore. With a halting computation we associatea result which is given as the number of copies of the objectsfrom T present in the environment in the halting configuration.

Because of the non-determinism in choosing the programs,starting from the initial configuration we obtain several com-putations, hence, with a P colony we can associate a set of(vectors of) numbers, denoted by N(Π), computed by allpossible halting computations of Π.

The number of agents in a given P colony is called thedegree of Π; the maximal number of programs of an agent

of Π is called the height of Π. The family of all sets of(vectors of) numbers N(Π) computed as above by P coloniesof degree at most n ≥ 1 and height at most h ≥ 1 (usingchecking programs, i.e., priorities on the communication rulesin the programs) working in the sequential mode is denoted byNPCOLseq(n, h, pri), whereas the corresponding families ofP colonies working in the maximally parallel way are denotedby NPCOLpar(n, h, pri). If one of the parameters n, h is notbounded, then we replace it with ∗. If only P colonies usingprograms without priorities are taken into account, we omitthe parameter pri.

III. RESULTS

In this section we will prove our results for P colonies. Westart with showing that P colonies of height five but with anunbounded number of agents are computationally completeeven when working in the sequential mode. To this aim, wecan take over the proof of Theorem 1 given in [4].

Theorem 2: NPCOLseq(∗, 5, pri) = PsRE.

Proof: Let us consider a register machine M =(m,P, l0, lh). All the labels from lab(M) will be objects forour colony; moreover, the contents of a register i will berepresented by the number of copies in the environment ofa specific object ai. We assume the first k registers to containthe final results. More exactly, we construct the P colony

Π = (V, e, T,B1, ..., Bn),V = lab(M) ∪ {ai | 1 ≤ i ≤ m} ∪ {l′0, e, d, d′},T = {ai | 1 ≤ i ≤ k},

and the following n = card(P ) + 3 agents and their corre-sponding programs:

1) We consider the starting agents B1, B2 with their setsof programs:P1 = {〈e → d, e ↔ e〉 , 〈e → l0, d ↔ d′〉 ,

〈d′ → l′0, l0 ↔ e〉},P2 = {〈e → d′, e ↔ e〉 , 〈e → l′0, d

′ ↔ e〉} .

Each of the agents can start with its first program.Agent B1 can only continue with its second program instep three, when d′ is present in the environment afteragent B2 has expelled this symbol after having executedall its programs. Finally, B1 can release l0 into theenvironment to start the simulation of a computation inM . Note that at this moment, both agents have stoppedtheir work (with B1 and B2 containing the multiset〈l′0, e〉).

2) For each ADD instruction l1 : (A (r) , l2, l3) from P weconsider an agent with the set of programsPl1

= {〈e → ar, e ↔ l1〉 ,

〈l1 → l2, ar ↔ e〉 , 〈e → e, l2 ↔ e〉 ,

〈l1 → l3, ar ↔ e〉 , 〈e → e, l3 ↔ e〉}.

In the first step, we apply the program 〈e → ar, e ↔ l1〉thus obtaining the multiset 〈ar, l1〉 from the multi-set 〈e, e〉 in the agent. By applying the programs〈l1 → li, ar ↔ e〉 and 〈e → e, li ↔ e〉 , i ∈ {2, 3} , weend up with the multiset 〈e, e〉 in the agent again,whereas in the environment the number of symbols ar

Page 60: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

52

has been incremented and the label symbol l1 has beenreplaced by li.

3) For each (conditional) SUB instruction l1 : (S (r) , l2, l3)from P we consider the agent with the set of programsPl1

= {〈e → e, e ↔ l1〉 , 〈l1 → l2, e ↔ ar/e ↔ e〉 ,

〈ar → e, l2 ↔ e〉 ,

〈l2 → l3, e ↔ e〉 , 〈e → e, l3 ↔ e〉}.

After taking the label symbol l1 inside by applying therule 〈e → e, e ↔ l1〉, the application of the checkingprogram 〈l1 → l2, e ↔ ar/e ↔ e〉 allows for checkingwhether the environment contains a symbol ar or not.In case it is present, 〈l1 → l2, e ↔ ar〉 is applied takingone symbol ar from the environment and yielding themultiset 〈l2, ar〉 inside the agent. Then the program〈ar → e, l2 ↔ e〉 has to be applied, yielding 〈e, e〉 inthe agent again, whereas in the environment the numberof symbols ar has been decremented and the labelsymbol l1 has been replaced by l2. On the other hand,if no symbol ar is present inside, then instead weexecute the programs 〈l1 → l2, e ↔ e〉 and afterwardswe have to apply 〈l2 → l3, e ↔ e〉 and 〈e → e, l3 ↔ e〉thus yielding 〈e, e〉 in the agent again, whereas in theenvironment the label symbol l1 has been replaced byl3.

As the simulations of the ADD as well as the conditionalSUB instructions as defined above are exactly the sameas given in the proof of Theorem 1 in [4], we referto there for some further explanations; yet we have toemphasize the fact that the P colonies constructed therework in the maximally parallel mode, whereas here wework in the sequential mode instead, which in fact onlymakes a real difference for the work of the first twoagents B1, B2 when starting the computation.

4) When the final label lh appears in the environment, fromall the agents defined above there is no program to beapplied anymore; the final agent Bn with the followingtwo programs erases lh and then stops with 〈e, e〉 in theagent:Pn = {〈e → e, e ↔ lh〉 , 〈lh → e, e ↔ e〉} .

Thus, the P colony Π halts with with the result con-sisting of the objects ar present in the environment,with B1 and B2 containing the multiset 〈l′0, e〉 and allother agents containing 〈e, e〉 . As the environment onlycontains symbols from T, we could also regard Π asa non-extended system where the result of a haltingcomputation is constituted by the symbols different frome in the environment.

We finally observe that to each agent at most five programsare assigned, which observation completes the proof.

On the other hand, when we omit the checking programs,i.e., the priorities on the communication rules, but use the max-imally parallel derivation mode instead of the sequential mode,we get a similar result by using the idea of “paired” programs:P colonies of height 5 working in the maximally parallel modebut without checking programs are computationally complete.

Theorem 3: NPCOLpar(∗, 5) = PsRE.

Proof: (sketch) Again we consider a register machineM = (m,P, l0, lh), and represent the contents of a registeri by the number of copies in the environment of a specificobject ai. Then we construct the P colony

Π = (V, e, T,B1, ..., Bn) ,

V ={

l, l, l′, l, l′, l′′, l, l′ | l ∈ lab(M)}

∪ {ai | 1 ≤ i ≤ m} ∪ {e, d, d′} ,

T = {ai | 1 ≤ i ≤ k} ,

and the following agents and their corresponding programs:Each simulation of instruction l starts with l and l in the

environment; to initialize the whole system, i.e. to produce l0and l0, we take the following two agents P0,1 and P0,2:

P0,1 = {⟨

e → l0, e ↔ e⟩

,⟨

e → l′0, l0 ↔ e⟩

,⟨

l′0 → l0, e ↔ e⟩

,⟨

e → l′′0 , l0 ↔ e⟩

},

P0,2 = {⟨

e → l0, e ↔ l0

,⟨

l0 → l′′0 , l0 ↔ e⟩

}.

Both agents end up with the multiset⟨

e, l′′0

inside and stopforever; at the same time, i.e., after four steps, they havereleased l0 and l0 into the environment.

An ADD instruction l1 : (ADD (r) , l2, l3) can be simulatedby the following four agents Pl1,i, i ∈ {1, 2, 3, 4}:

Pl1,1 = {⟨e → l′1, e ↔ l1

⟩,

⟨l1 → ar, l

1 ↔ e⟩,

〈e → l2, ar ↔ e〉 ,

〈e → e, l2 ↔ e〉 },

Pl1,2 = {⟨

e → e, e ↔ l1

,⟨

l1 → e, e ↔ e⟩

,⟨

e → l2, e ↔ l′1

,⟨

l′1 → e, l2 ↔ e⟩

},

Pl1,3 = {⟨

e → l′1, e ↔ l1

,⟨

l1 → ar, l′

1 ↔ e⟩

,

〈e → l3, ar ↔ e〉 ,

〈e → e, l3 ↔ e〉 },

Pl1,4 = {⟨

e → e, e ↔ l1

,⟨

l1 → e, e ↔ e⟩

,⟨

e → l3, e ↔ l′1

,⟨

l′1 → e, l3 ↔ e⟩

}.

Agents Bl1,1 and Bl1,2 (Bl1,3 and Bl1,4, respectively) worktogether in the following way. Bl1,1 (Bl1,3) takes l1 from the

Page 61: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

53

environment, produces ar and sends out l′1 (l′1) while in thesame two steps either Bl1,2 or Bl1,4 simply “consumes” l1ending up with the multiset 〈e, e〉 again (due to the maximalparallelism, Bl1,2 or Bl1,4 have to work in parallel with Bl1,1

or Bl1,3, respectively). In the subsequent steps, Bl1,1 (Bl1,3)sends out ar and l2 (l3), whereas now Bl1,3 (Bl1,4) producesand sends out l2 (l3), allowing for the next instruction l2 orl3, respectively, to be simulated.

A conditional SUB operation l1 : (SUB (r) , l2, l3)can be simulated by the following six agents Pl1,i, i ∈{1, 2, 3, 4, 5, 6}:

Pl1,1 = { 〈e → e, e ↔ l1〉 ,⟨l1 → l1, e ↔ ar

⟩,

⟨ar → e, l1 ↔ e

⟩,

l1 → l1, e ↔ l′1

,⟨

l′1 → e, l1 ↔ e⟩

},

Pl1,2 = {⟨

e → l′1, e ↔ l1

,⟨

l1 → e, l′1 ↔ e⟩

}.

In the first step, Bl1,1 and Bl1,2 take in the labels l1 and l1.

In the second step, Bl1,2 sends out l′1, whereas Bl1,1,

1) in case there is an object ar in the environment, takesin ar and then sends out l1;

2) in case there is no object ar present outside, consumes(after having waited one step) l′1 and finally sends outl1.

With l1 in the environment, Bl1,3 and, two steps later, Bl1,4

become active; they produce the corresponding labels l2 andl2; thereby, Bl1,3 also consumes the symbol l′1:

Pl1,3 = {⟨e → l′1, e ↔ l1

⟩,

⟨l1 → l′′1 , l′1 ↔ e

⟩,

l′′1 → l2, e ↔ l′1

,⟨

l′1 → e, l2 ↔ e⟩

},

Pl1,4 = {⟨

e → l2, e ↔ l′1

,⟨

l′1 → e, l2 ↔ e⟩

}.

If, on the other hand, l1 was expelled by Bl1,1, then onlyBl1,5 and Bl1,6 can apply their programs in a similar way asBl1,3 and Bl1,4, finally sending out l3 and l3 :

Pl1,5 = {⟨

e → l′1, e ↔ l1

,⟨

l1 → l′′1 , l′1 ↔ e⟩

,⟨

l′′1 → l3, e ↔ e⟩

,

〈e → e, l3 ↔ e〉 },

Pl1,6 = {⟨

e → l3, e ↔ l′1

,⟨

l′1 → e, l3 ↔ e⟩

}.

When the final label lh appears in the environment, fromall the agents defined above there is no program to be applied

anymore; the final agent Bh with the following two programserases lh and then stops with 〈e, e〉 in the agent:

Ph = {〈e → e, e ↔ lh〉 , 〈lh → e, e ↔ e〉} .

Thus, the P colony Π halts with the result consisting ofthe objects ar present in the environment, with B1 and B2

containing the multiset⟨

e, l′′0

and all other agents containing〈e, e〉 .

Finally, we again observe that each agent has at mostfive programs not containing a checking program, whichobservation concludes the proof.

If instead of bounding the height the number of agents isbounded, two agents were shown to be sufficient to obtaincomputational completeness in [4]. We here can show thatone agent with checking programs is already enough in thiscase (observe that one agent obviously by definition works inthe sequential mode).

Theorem 4: NPCOLseq(1, ∗, pri) = PsRE.

Proof: (sketch) We take the idea given in the proof ofTheorem 2 in [4], yet now there is only one agent insteadof two. Once more we consider a register machine M =(m,P, l0, lh) and represent the contents of a register i by thecorresponding number of copies of a specific object ai in theenvironment. We now construct the P colony

Π = (V, e, T,B1) ,

V = {l, l′, l′′ | l ∈ lab(M)} ∪ {ai | 1 ≤ i ≤ m}∪ {σ, σ′},

T = {ai | 1 ≤ i ≤ k} ,

and the following (possibly checking) programs in P1 for thesingle agent B1:

To start the simulation, the agent B1 has to perform thefollowing programs:〈e → σ, e ↔ e〉 ,

〈e → σ′, σ ↔ e〉 , 〈σ′ → α, e ↔ σ〉 ,

〈σ → σ, α ↔ e〉 , 〈σ → l0, α ↔ e〉 .

By the first four programs, an arbitrary number of objectsα ∈ {l′, l′′ | l ∈ lab (M)} is produced and sent out to the en-vironment. If at some moment, the program 〈σ → l0, α ↔ e〉is used, then the “dummy” object σ disappears forever and thesimulation of the computation in M can start with the agentcontaining the multiset 〈l0, e〉.

To simulate an ADD instruction l1 : (A (r) , l2, l3) from P

we have to include the following programs in P1 :

〈l1 → l′1, e ↔ e〉 , 〈e → ar, l′

1 ↔ l′1〉 ,

〈l′1 → l2, ar ↔ e〉 , 〈l′1 → l3, ar ↔ e〉 .

With these programs an object ar is produced and sent to theenvironment while at the same time the corresponding label toproceed is generated so that after performing these programs,the agent contains either the multiset 〈l2, e〉 or the multiset〈l3, e〉 and then can go on simulating the next instruction.

To simulate a conditional SUB instruction l1 : (S (r) , l2, l3)from P we add the following programs to P1 :

〈l1 → l′1, e ↔ ar/e ↔ e〉 , 〈ar → e, l′1 ↔ l′′1 〉 ,

Page 62: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

54

〈l′′1 → l2, e ↔ e〉 , 〈l′1 → l3, e ↔ e〉 .

In the case that at least one copy of ar is present in theenvironment, it is brought into the agent and changed into e

before producing label l2 to proceed. Otherwise, after havingchecked that there is no copy of ar present in the environment,label l3 is produced. Hence, after simulating the conditionalSUB instruction from P , the contents of the agent is either〈l2, e〉 or 〈l3, e〉 allowing for the next instruction l2 or l3 to besimulated.

To make sure that sufficiently many primed versions of thecorresponding labels have been produced before starting thesimulation, we also have to add the program 〈l′1 → l′1, e ↔ e〉 .

This program ensures the computation to go on forever in casethe communication rules l′1 ↔ l′1 or l′1 ↔ l′′1 cannot be used.

When the final label lh appears in the environment, noneof the programs defined above can be applied anymore;for eliminating all objects α ∈ {l′, l′′ | l ∈ lab (M)} in theenvironment, we use the following programs:

〈lh → lh, e ↔ α〉 , 〈α → l′h, lh ↔ e〉 , 〈l′

h→ e, e ↔ lh〉 .

Thus, the P colony Π finally halts with the result consistingof the objects ar present in the environment and with B1

containing the multiset 〈e, lh〉.

Without using checking programs, i.e., without priorities onthe communication rules, P colonies working in the sequentialmode only characterize the family of Parikh sets of languagesgenerated by matrix grammars or equivalently, the family ofsets of vectors of non-negative integers generated by partiallyblind register machines:

Theorem 5: NRMpb = NPCOLseq(1, ∗)= NPCOLseq(∗, ∗) = PsMAT.

Proof: We will prove the following sequence of inclu-sions:

NRMpb ⊆ NPCOLseq(1, ∗)⊆ NPCOLseq(∗, ∗)⊆ PsMAT ⊆ NRMpb.

The first inclusion

NRMpb ⊆ NPCOLseq(1, ∗)

is an immediate consequence of the preceding theorem - tosimulate an unconditional SUB instruction l1 : (S (r) , l2, l3)from P of a register machine M = (m,P, l0, lh) we now usethe following programs for B1 (we have replaced the checkingprogram 〈l1 → l′1, e ↔ ar/e ↔ e〉 by the non-checking pro-gram 〈l1 → l′1, e ↔ ar〉):〈l1 → l′1, e ↔ ar〉 , 〈ar → e, l′1 ↔ l′′1 〉 ,

〈l′′1 → l2, e ↔ e〉 , 〈l′′1 → l3, e ↔ e〉 .

The only problem we have to face now is that the first programmay not be applicable due to the absence of the symbol ar inthe environment. For that purpose, we add the program

〈l1 → l′1, e ↔ e〉 .

After having executed this program, we end up in an infiniteloop with the program 〈l′1 → l′1, e ↔ e〉 . Hence, a result will

only be computed if we never have tried to subtract from zero,which is just the same idea as used in partially blind registermachines. On the other hand, at the end of a simulation of acomputation in M the condition of halting for the P colony Πallows us to check whether all the other registers are empty,i.e., to the programs

〈lh → lh, e ↔ α〉 , 〈α → l′h, lh ↔ e〉 ,

〈l′h→ e, e ↔ lh〉

constructed in the proof of the preceding theorem for eliminat-ing all objects α ∈ {l′, l′′ | l ∈ lab (M)} in the environment,we now also add the corresponding programs for α ∈ {ai |k + 1 ≤ i ≤ m}, i.e.,

〈lh → lh, e ↔ α〉 , 〈α → l′′h, lh ↔ e〉 , 〈l′′

h→ l′′

h, e ↔ e〉 ;

the last program guarantees that we end up in an infinite loopafter having detected a symbol ai, k + 1 ≤ i ≤ m.

The remaining elements of the P colony are just the same asthose of the P colony constructed in the proof of the precedingtheorem; we leave the remaining details to the reader.

The inclusion

NPCOLseq(1, ∗) ⊆ NPCOLseq(∗, ∗)

is an immediate consequence of the definitions.

The main contribution in this proof now is to show theinclusion

NPCOLseq(∗, ∗) ⊆ PsMAT.

LetΠ = (V, e, T,B1, ..., Bn)

be a P colony without checking programs. We now (sketchhow to) construct the matrix grammar G = (N,T, S,M)simulating Π as follows:

The symbols a 6= e in the agents and in the environment arerepresented by non-terminal symbols: For a symbol a ∈ V inthe agent i, 1 ≤ i ≤ n, we use the non-terminal (a, i) ; for asymbol a ∈ V − {e} (observe that e occurs in an unboundednumber in the environment) in the environment, we use thenon-terminal (a, 0) .

In G, we start with the initial matrix(

S → E (e, 1)2... (e, n)

2)

.

For simulating the program

〈a → b, c ↔ d〉

in Pi for the agent Bi we then use the matrix

(E → E, (a, i) → (b, i) , (c, i) → h (c) , (d, 0) → (d, i))

for d 6= e and the matrix

(E → E, (a, i) → (b, i) , (c, i) → h (c) , E → E (e, i))

in the case d = e, where

h : (V × {1, ..., n})∗ → (V × {0})∗

is the morphism with

h ((c, i)) = (c, 0) for c 6= e and

h ((e, i)) = λ.

Page 63: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

55

In that way, the execution of a program in the P colony Π caneasily be simulated by the application of the correspondingmatrix in the matrix grammar G.

The main difficulty arises when we non-deterministicallyhave to guess when Π has reached a halting configurationwhere no program can be applied any more, hence, G nowhas to filter out the terminal symbols in the environment andto erase all the remaining non-terminal symbols. Therefore wehave to consider all different possibilities for configurationsto be halting ones; fortunately, these configurations can bedescribed by a finite set of strings (lists of variables) of theform

a1,1a1,2...an,1an,2a0,1...a0,l

for some l < card (V ) , the a0,j , 1 ≤ j ≤ l, beingdifferent symbols from V −{e} representing all those symbolsoccurring in the form (a0,j , i) at least once in the environment,whereas ai,1, ai,2, 1 ≤ i ≤ n, represent the multiset in thecorresponding agent i appearing as (ai,1, i) and (ai,2, i) in thesentential form produced by the matrix grammar. Accordingto our assumptions, each of these strings describes a situationwhere no program from the P colony Π can be applied anymore, i.e., a halting configuration. Non-deterministically wenow guess such a situation and define matrices which allowus to eliminate all those non-terminal symbols indicated bythe corresponding string:

(E → (F, a1,1a1,2...an,1an,2a0,1...a0,l)) ,

((F, a1,1a1,2...an,1an,2a0,1...a0,h) →(F, a1,1a1,2...an,1an,2a0,1...a0,h) , a0,h → λ),for 1 ≤ h ≤ l,

((F, a1,1a1,2...an,1an,2a0,1...a0,h) →(F, a1,1a1,2...an,1an,2a0,1...a0,h−1)),for 1 < h ≤ l,

((F, a1,1a1,2...an,1an,2a0,1) → (F, a1,1a1,2...an,1an,2)) ,

((F, a1,1...ai,f ) → (F, a1,1...ai,f ) , ai,f → λ) ,

for 1 ≤ i ≤ n and 1 ≤ f ≤ 2,

((F, a1,1...ai,2) → (F, a1,1...ai,1)) ,

for 1 ≤ i ≤ n,

((F, a1,1...ai,1) → (F, a1,1...ai−1,2)) ,

for 1 < i ≤ n, and((F, a1,1) → λ) .

In that way, we can eliminate all remaining non-terminalsymbols and extract the terminal result provided we makethe correct non-deterministic choices for the matrices to beapplied. If at least one of the guesses is not correct, then notall the remaining non-terminal symbols are erased from thesentential form obtained after having simulated a computationin the P colony by the matrix grammar. From the explanationsgiven so far it should have become clear that we can derive aterminal word w in the matrix grammar G if and only if theParikh vector of w is the result of a halting computation in Π,

which proves the inclusion

NPCOLseq(∗, ∗) ⊆ PsMAT.

To complete the proof of the theorem, it only remains toprove the inclusion

PsMAT ⊆ NRMpb.

Although the equality PsMAT = NRMpb is quite folk-lore, we sketch a proof of the inclusion PsMAT ⊆ NRMpb

in order to have included complete proofs of all results statedin this paper:

Let G be a matrix grammar with

G = (N,T, S,M) ;

without loss of generality we assume G to be in the f-binarynormal form. We then construct a partially blind registermachine M ′ = (m,P, 1, n) with Ps (L (G)) = L (M ′) asfollows:

We bijectively label the matrices in M with 1, ..., n. Foreach symbol in V = N ∪ T we use a register named by thissymbol.

1) The initial matrix 1 : (S → XA), with X ∈ N1, A ∈N2, is simulated by the instructions1 : (S (S) , (1′, 1) , 1′) ,

(1′, 1) : (A (A) , l1, (1, 2)) ,

(1, 2) : (S (A) , (1′, 2) , 1′) ,

(1′, 2) : (A (A) , l2, 1′) , ...,

(1, k) : (S (A) , (1′, k) , 1′) ,

(1′, k) : (A (A) , lk, 1′) ,

where l1, ..., lk are chosen in such a way that these areexactly all the labels of matrices which are of the form(X → Y,A → x).

2) The matrices l : (X → Y,A → x), with X,Y ∈ N1,

A ∈ N2, x ∈ (N2 ∪ T )∗, |x| ≤ 2, are simulateddepending on the length of x as follows:

a) |x| = 0 :l : (S (A) , l1, (l, 2)) ,

(l, 2) : (A (A) , (l′, 2) , l′) ,

(l′, 2) : (S (A) , l2, (l, 3)) , ...,(l, k) : (A (A) , (l′, k) , l′) ,

(l′, k) : (S (A) , lk, l′) ;b) x = B :

l : (S (A) , (l′, 1) , l′) ,

(l′, 1) : (A (B) , l1, (l, 2)) ,

(l, 2) : (S (B) , (l′, 2) , l′) ,

(l′, 2) : (A (B) , l2, (l, 3)) , ...,(l, k) : (S (B) , (l′, k) , l′) ,

(l′, k) : (A (B) , lk, l′) ;c) x = CB :

l : (S (A) , (l, 1) , l′) ,

(l, 1) : (A (C) , (l′, 1) , l′) ,

(l′, 1) : (A (B) , l1, (l, 2)) ,

(l, 2) : (S (B) , (l′, 2) , l′) ,

(l′, 2) : (A (B) , l2, (l, 3)) ,...,(l, k) : (S (B) , (l′, k) , l′) ,

(l′, k) : (A (B) , lk, l′) ;

in any case, l1, ..., lk are are chosen in such a way thatthese are exactly all the labels of matrices which are ofthe form (X → Y,A → x).

3) The matrices l : (X → f,A → x), with X ∈ N1, A ∈N2, and x ∈ T ∗, |x| ≤ 2, again are simulated dependingon the length of x as follows:

a) |x| = 0 :l : (S (A) , n, l′) ;

Page 64: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

56

b) x = B :l : (S (A) , (l′, 1) , l′) ,

(l′, 1) : (A (B) , n, l′) ;c) x = CB :

l : (S (A) , (l, 1) , l′) ,

(l, 1) : (A (C) , (l′, 1) , l′) ,

(l′, 1) : (A (B) , n, l′) .

4) The final matrix n : (f → λ) is simulated by theinstructionn : (S (f) , lh, l′

h) .

The whole program P for the partially blind register ma-chine M ′ is obvious from the construction described above;moreover, when M ′ reaches the final label lh, then all registersrepresenting the numbers of non-terminal symbols are emptyif and only if the simulated derivation in the matrix grammarG has yielded a terminal word.

These observations complete the proof of the inclusion

PsMAT ⊆ NRMpb

and the proof of the whole theorem as well.

IV. CONCLUSION

We have shown that P colonies working in the sequentialmode with checking programs of height at most 5 are compu-tationally complete, whereas when working in the maximallyparallel mode, P colonies using programs again with height 5but without priorities on the communication rules (i.e., withoutchecking programs) achieve the same computational power,too.

Already one agent using checking programs is enough toobtain computational completeness in P colonies working inthe sequential mode, which is a quite surprising result optimalwith respect to the number of agents. If we only allow non-checking programs, even P colonies with only one agent aswell as P colonies with an arbitrary number of agents workingin the sequential mode characterize the family of languagesgenerated by matrix grammars without appearance checking.

REFERENCES

[1] E. Csuhaj-Varju, J. Dassow, J. Kelemen, and Gh. Paun, GrammarSystems: A Grammatical Approach to Distribution and Cooperation.London: Gordon and Breach, 1994.

[2] J. Dassow and Gh. Paun, Regulated Rewriting in Formal LanguageTheory. Berlin: Springer-Verlag, 1989.

[3] J. Kelemen, A. Kelemenova, “A grammar-theoretic treatment of multi-agent systems”, Cybernetics and Systems, vol. 23, pp. 621-633, 1992.

[4] J. Kelemen, A. Kelemenova, Gh. Paun (2004) On the power of abiochemically inspired simple computing model: P colonies. [Online].Available: [9]

[5] M. Minsky, Computation. Finite and Infinite Machines. EnglewoodCliffs, NJ: Prentice Hall, 1967.

[6] Gh. Paun, “Computing with membranes”, Journal of Computer andSystem Sciences, vol. 61, no. 1, pp. 108–143, 2000 and TUCS ResearchReport 208, 1998. [Online]. Available: http://www.tucs.fi

[7] Gh. Paun, Membrane Computing: an Introduction. Berlin: Springer-Verlag, 2002.

[8] A. Salomaa and G. Rozenberg, Eds., Handbook of Formal Languages.Berlin: Springer-Verlag, 1997.

[9] The P systems webpage. [Online].Available: http://psystems.disco.unimib.it

Page 65: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

57

A simulator and an evolution program forconformon-P systems

Pierluigi Frisco, Ranulf T. GibsonDept. of Comp. Sci., School of Eng., C. S. and Math., University of Exeter,

Harrison Building, North Park Road, Exeter, EX4 4QF, U.K.Email: [email protected], [email protected]

Abstract— A simulator for conformon-P systems is presentedtogether with an initial study of an evolution program optimisingprocesses described by conformon-P systems.

I. INTRODUCTION

The compartmentalization created by membranes presentinside (eucaryotic) cells has been of inspiration to G. Paun[11] for the definition of distributed and parallel theoreticalcomputational models called Membrane systems (or P sys-tems).

Despite the biological motivations of these devices the firstinvestigations about them had a solely computability focus: thecomputational aspects of numerous variants of P systems hasbeen (and is) deeply studied. In the later years the attentionof researchers on P systems widened to other fields [12], [4]([13] is the most updated source of information on P systems).The study of biological processes through different variants ofP systems is one of these new lines of research.

Conformon-P systems [5] are the kind of P systems consid-ered in this paper. They are characterised by a rather simpledefinition that fits well with the modelling of (biological)processes at any scale. Given a conformon-P system modellinga biological process the conformons present in it can representchemicals, molecules or entire systems, the interaction be-tween these conformons can describe the interaction betweenwhat is represented by them. For instance, two conformonsrepresenting two different chemicals can interact to createa molecule represented by another conformon; a conformonrepresenting a molecule can interact with another representinga system (i.e., an organelle or an entire cell), etc. Conformon-P systems are particularly fitted to a bottom-up approach inmodelling: their simple definition allows to describe and studyin details sub-processes that can be regarded as unitary partsin a more complex process.

In this paper we present a simulator of conformon-P systems(Section III) and its application to the modelling of chemicalreactions (the first ten chemical reactions involved in glycol-ysis are our test case).

We also report initial results about an evolution program op-timising processes described by conformon-P systems (SectionIV). Here the target is to create a (evolution) program that canbe of help in the study of not well understood processes.

II. SOME MODULES

Because of page limits we omit to give some definitions,anyhow we use the ones indicated in [5].

In the following we will use the concept of module: a groupof membranes with conformons and interaction rules in aconformon-P system able to perform a specific task. A moduleis not a conformon-P systems as it lacks of the specificationof a final and of an acknowledgement membrane.

The modelling of chemical reactions with conformon-Psystems can be performed in a direct way if some phenomena(present during chemical reactions) are defined by modules.

Lemma 1: (Bounded increase) Let [A, a] and [B, b] twoconformons and x, y, a′ ∈ N such that b + x = y ≥ 1, a′ =a − x ≥ 1, y ≥ x, a ≥ x and b ≤ y. There is a module thatallows [A, a] and [B, b] to interact such that [A, a′] and [B, y]are produced.

The previous lemma states that the conformon A can passx value to B even if A could pass z > x to B.

The interaction between two conformons cannot model ina direct way the reaction of several chemicals. We prefer tohave a module that model this phenomenon.

Lemma 2: (Multiple interaction) There is a module thatwhen all the conformons [Xi, xi], xi ≥ 1, 0 ≤ i ≤ n areassociated to a specific membrane can let the conformons[Yj , yj ], yj ≥ 1, 0 ≤ j ≤ m pass to another specificmembrane.

Notice that in the previous lemma i and j can be differentand that the decrease of value of the Xi conformons has to beequal to the increase of value of the Yj conformons. Anyhowthe Yj can pass to an increaser/decreaser and have their valueschanged independently from the values of the Xi.

We redefine the interaction between conformons in the fol-lowing way: 〈M1;V1;M2;T2〉 where M1 and M2 are vectorsof name of conformons, while V1 and T2 are vectors withvalues in N0. Vectors M1 and V1 have the same dimension;similarly for M2 and T2.

The meaning of 〈M1;V1;M2;T2〉 is: the conformons withnames in M1 can pass the (respectively) values in V1 tothe conformons with names in M2 and the value of theconformons in M2 can have at most what is indicated in T2

(respectively).For instance let us assume that we want to model the

chemical reaction 2H2 + O2 ⇀ 2H2O and that we useconformons [2H2,m] and [O2, n] indicating that there are

Page 66: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

58

m molecules of 2H2 and n molecules of O2. The result ofthe interaction of these conformons has to create pairs ofconformons of the kind [H2O, 1] indicating one molecule ofH2O (so we do not want to create conformons of the kind[H2O, p] with p ≥ 2).

The rule 〈(H2, O2); (2, 1); (H2O,H2O); (1, 1)〉 representswhat just we described: every H2 conformon loses 2 units ofvalue and every conformon O loses 1 unit of value, at the sametime two conformons with names H2O get 1 as value. Thisimplies that if a conformon [H2O, 1] is already present, itsvalue is not going to be increase further (because it is already1, the maximum value indicated by the rule).

Considering that some chemical reactions are reversible,then the combination of the interactions 〈M1;V1;M2;T2〉 and〈M2;V2;M1;T1〉 leads to the general chemical interaction〈M1;V1;T1;M2;V2;T2〉.So, for instance, let us assume that we want to model the(reversible) reaction 2SO2 + O2 ­ 2SO3 and that we useconformons [SO2, 2] and [O2, 1] indicating two molecules ofSO2 and one of O2, respectively, with several copies of eachof these conformons. Moreover, there are also conformonswith name SO3 whose value indicates the number of the SO3

molecule. For some reason we do not want that the value ofthese last conformons to go above 4.

The rule 〈(SO2, O2); (2, 1); (2, 1); (SO3); (2); (4)〉represents what just described: the value of the conformonSO3 increases of two units every time the value of one ofthe conformons with name SO2 decreases of 2 together withthe decrease of 1 of the value of one of the conformons withname O2. The value of a conformon SO3 cannot go above 4.A conformon with this name can lose two units and while aconformon SO2 gets two units and a conformon O2 gets oneunit. The value of a conformon SO2 cannot go above 2 andthe value of a conformon O2 cannot go above 1.

III. THE SIMULATOR

It is not difficult to devise a simulator for conformon-Psystems based on an object-oriented programming language.Conformons, interaction rules, membranes and the movementof a conformon from a membrane to another can easily bemodelled by objects. This, together with the desire to allowthe code to be run on different platforms, leads us to chooseJava as the programming language. Similar choice has beentaken in [10], [2] in the creation of a simulator for P systems.

We also wanted to have a simulator that could have thedefinition of any conformon-P system as input. In this casethe choice for the format of the input file has been XML.The main advantage in the use of XML is the presence oflibraries designed to process an XML file. Similar choice hasbeen taken in [2] in the creation of a simulator for P systems.

The simulator program can simulate any conformon-P sys-tems as defined in [5] and moreover it implements the moduleslisted in Section II. This means that if a module is present ina conformon-P system the user can either describe it in all itsdetails or use a shortcut in the input XML file.

The simulation of the conformon-P system defined in theinput file is divided into x time steps. In each time step thesimulator implements a transition of the conformon-P system.

After each time step the configuration of the conformon-P system, is produced (appended to an XML output file).It is possible to define the format of the output file whichcan contain the membrane structure, the conformons, theinteraction rules, the passage rules and any combination ofthem.

We will not go into the details of the implementation, butwe describe how the simulation of the operations is performed.

Looping through all membranes in the system, either inter-action rules or passage rules are simulated first (50% chance).

When rules are simulated one rule per time is chosen atrandom. A chosen rule can be applied at most c times wherec is the number of conformons present in the membrane in thattime unit. For each application of the rule it is first checkedif all the needed conformons (on the left side of a rule)are available (this is done by a random choice between theconformons present in the membrane). In an affirmative casethe chosen conformons are selected for the rule. If a randomlygenerated number is smaller than the probability associated tothe rule, then the selected conformons are ‘tagged’. A ‘tagged’conformon is not available to any other operation in that timeunit.

When passage rules are simulated each conformon traversesin a random order all the links. If the link can be applied tothe conformon, then there is 50% chance of the conformon topass to another membrane.

It should be clear that this algorithm allows a conformonnot to be involved in any interaction or passage rule even if itcould.

The input file. Appendix I contains an XML file with thedefinition of a conformon-P system.

The majority of the XML tags are self-explanatory. Theones we believe not self-explanatory are:

Equation: indicates the conformons involved in a rule, thevalued that are passed and the maximum threshold that can bereached;

Conformon1, Conformon1PassValues, Conformon1Limit,Conformon2, Conformon2PassValues, Conformon2Limit: list,eventually divided by a pipe (|), what present inM1, V1, T1,M2, V2 and T2, respectively, in a generalchemical interaction;

Condition: the allowed values are le (less or equal), ge

(greater or equal) and e (equal);MustBeId: it refers to a Separator (see Lemma 2 in [5]) and

indicates that only conformons with the specified name verifythe predicate.

The tags: Multiplicity, Id (for a rule), Reversible,Conformon1Limit, Conformon2Limit and MustBeIdare optional.

In the input file only the conformons present with a valuedifferent than 0 in the initial configuration have to be indicated,the remaining conformons are created at runtime by thesimulator. In Appendix I, for instance, conformon C is notdefined as conformon present in the initial configuration butit appears as argument in an interaction rule.

The toy simulation The chemical process that we decidedto simulate are the first ten chemical reactions of glycolysis[1]. Glycolysis is a very well understood process in a cell

Page 67: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

59

and can be an excellent benchmark to test the validity of oursimulator.

In this process for each molecule of glucose present at thebeginning, two molecules of pyruvate are produced. This canonly happen only if two molecules of ATP are also available atthe beginning. The net effect of these ten chemical reactions isthat for each molecule of glucose and two molecules of ATP,two molecules of NADH, four of ATP and two of pyruvateare created.

Running the simulator on the first ten chemical reactionspresent in glycolysis led to the expected result: for eachmolecule of glucose and two molecules of ATP present atthe beginning two molecules of NADT, four of ATP and 2of pyruvate have been created in around 100 time units. Thisresult is promising but not unexpected: the simulated process isquite small (a few chemicals and just ten chemical reactions)and moreover the probabilities associated to each rule werenot related to the modelled process.

IV. AN EVOLUTION PROGRAM

Our intention is to create a tool that could be used (forinstance by biologist) to simulate known processes and as anhelp in the study of processes not entirely defined.

We consider the scenario in which a researcher is trying todiscover all the steps present in a process and the relationspresent between them. At some stage during this researchsome parts of the process are known, others are partiallyknown, while others are unknown. We would like to providesuch a researcher with a tool that could easily model the knownpart of the process under study and that could validate orinvalidate assumptions on the process and eventually to predictsome behaviour of it. The bottom-up approach in modellingpresent in conformon-P systems is essential in this kind ofstudy. Their simple definition allows to describe and study indetails sub-processes that in a later stage can be regarded asmodules (described by a shortcut in the input XML file) for amore efficient simulation.

In glycolysis the ratio glucose:ATP present at the beginningof the reaction is 1:2. A simulator using a 1:1 ratio would nothave results comparable with the experiments. Knowing partof what happens during glycolysis an evolution program (EP)could be used to approximate the proper ratio (or any othermissing part of the process under study).

Evolution programs are used to search for the absolutemaximum (minimum) value of high dimensional functions forwhich there is no direct way to find such values, the reader isreferred to [9] for a thorough description of EPs.

We implemented an EP that searches for the minimumnumber of conformons (i.e. the minimum sum of the valuesof some input conformons) that can produce in the mini-mum number of generations a certain output conformon ina specified conformon-P system. The EP has two files ininput: the one describing the conformon-P system to simulate(glycolysis), and the other one specifying the input conformons(glucose and ATP), the output ones (pyruvate) and otherparameters used during the evolution process. The output ofthe EP is the minimum value of the input conformons that

succeeded in producing the desired output in the minimumnumber of iterations of the simulated conformon-P system.

The specifications for the EP are given in Appendix II.The results obtained by the EP indicated that, indeed, a

ratio 1:2 for glucose:ATP is the best one for the process weconsidered. This result is good but it is not surprising as theprocess we modelled is quite simple and the value of only twoelements has to be optimised.

V. FINAL REMARKS

The research reported in this paper is definitely a promisingstarting point. We are going to extend both the simulator andthe evolution program and to apply them to real world casestudies.

The simulator can be extended to include modules arisingby other processes.

We also think to extend the functionalities of a simulatorincluding the plot of the number of the conformons presentin the system during the simulation (similar studies have beenreported in [2], [3]).

At the present time the simulator does not consider issuessuch as the concentration of chemicals (as done in [2]) or otherfactors influencing a chemical reaction. These elements willbe added to the simulator in a later stage.

Of course it is not our intention to simulate a chemicalprocess performing the simulation of each single chemicalreaction present in it. We consider to include into the simulatoralgorithms approximating such processes [6], [7], [8].

It is hard for us to think to a ‘universal’ evolution programfor conformon-P systems as each process can have differentrepresentations or function to optimise. Depending on theprocess under study the evolution program can be extendedto include the evolution of rules, links and the membranesthemselves. Similarly the function to optimise can be relatedto any of the variable aspects (number of initial conformons,time steps, number of usage of certain rules, etc.) present ina conformon-P system.

ACKNOWLEDGEMENTS

This work has been supported by the research grantNAL/01143/G of The Nuffield Foundation.

APPENDIX IAN INPUT FILE

<XML version="1.0"><Psystem><Membrane><Id>M1</Id><Conformon>

<Id>A</Id><Value>2</Value><Multiplicity>3</Multiplicity>

</Conformon><Conformon>

<Id>B</Id><Value>1</Value>

</Conformon><Rule>

<Id>r2</Id><Equation>

<Conformon1>A|B</Conformon1><Conformon2>C</Conformon2><Conformon1PassValues>1|1</Conformon1PassValues><Conformon2PassValues>1</Conformon2PassValues>

Page 68: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

60

<Conformon1Limit>1|1</Conformon1Limit><Conformon2Limit>2</Conformon2Limit><Reversable>true</Reversable>

</Equation><Probability>0.8</Probability>

</Rule><Link><Linkto>M2</Linkto><Value>6</Value><Condition>le</Condition><Probability>1</Probability><MustBeId>C</MustBeId>

</Link></Membrane><Membrane>

<Id>M2</Id></Membrane></Psystem>

APPENDIX IISPECIFICATIONS OF THE EVOLUTION PROGRAM

An individual of the EP is a vector with the values of theinput conformons.

The fitness function to minimize is:((<time steps taken to reach the final configuration> *

<SimulatorPenalty>) * <SimulatorWeighting>) +

(<sum values input conformons> * <ChromosomeValueWeighting>)

where the sum of the elements of an individual are <sum

values input conformons>while <time steps taken to reach the

final configuration> indicates how many times units a simula-tion with a specific individual as initial configuration neededto reach the final configuration. This value can be at mostSimulatorIterations (see below).

The file with the specifications of the EP is an XML filewhose tags are:

SimulatorIterations : number of iterations of the simulatorfor each individual;

SimulatorPenalty: in case an individual does not reachTargetConformon then in its fitness SimulatorIterations is mul-tiplied by SimulatorPenalty;

SimulatorWeighting: how much weight is given to the num-ber of generations needed to reach TargetConformon(see below);

ChromosomeValueWeighting: how much weight is given to thenumber of conformons present in the initial configuration (seebelow);

PopulationSize: size of the population (number of individu-als);

UpperConformonLimit: the maximum value that the confor-mons in the initial configuration can have. The bigger thenumber the bigger the range of values and the smaller theprobability to guess a smaller value (if this leads to a fastsolution);

Generations: number of generations the EP runs;NumberOfChromosomesToMutate: how many individual mutate

in each generation;HowManyMutationsPerChromosome: how many values of the in-

put conformons are mutated;NumberOfCrossoversToPerform: half of the crossovers per-

formed in each generation (if 1, it means that 2 individualsare chosen to crossover);

TournamentSelection: how many individual are picked up tobe selected for the next population according to tournamentselection (see [9]);

SimulationAverageRuns: for each individual the simula-tor is run SimulationAverageRuns times (and each time forSimulatorIterations iterations). The time steps taken to reachthe final configuration is the average of the time steps in theSimulationAverageRuns simulations;

StartConformon: the name of the conformon present in theStartMembrane membrane defined in the conformon-P systemto simulate that represent the input conformons (this tag canbe repeated if there are more than one conformon);

StartMembrane: membrane defined in the conformon-P sys-tem to simulate containing the input conformons;

TargetConformon: it has two sub-tags: Id: name of the targetoutput conformon present in TargetMembraneand Value: value ofthe target output conformon present in TargetMembrane;

TargetMembrane: membrane defined in the conformon-P sys-tem to simulate where the output conformons should bepresent.

The tags SimulatorWeightingand ChromosomeValueWeightingareused to indicate what is more important in a solution. If weare looking for solutions having fast (small number of timesteps) simulation time, then SimulatorWeightingwill be smallerthan ChromosomeValueWeighting. In this way if two individualsreach the TargetConformonusing the same initial configurationbut one individual uses less time steps than the other, thenthe former gets an higher fitness value. If we are looking forsolutions having a small number of conformons in the initialconfiguration, then ChromosomeValueWeightingwill be smallerthan SimulatorWeighting.

The output of the EP is on screen: it just indicates theprogress of the simulation and at the end of it the fitness ofthe best individual with the value of each input conformon.

REFERENCES

[1] B. Alberts, A. Johnson, J. Lewis, M. Raff, K. Roberts, and P. Walter.Molecular biology of the cell. Garland Publishing, fourth edition, March2002.

[2] L. Bianco. Introduction to Psim. Downloaded from [13].[3] M. Cavaliere and I.I. Ardelean. Applications of Membrane Computing,

chapter Modelling respiration in bacteria and respiration/photosynthesisinteraction in Cyanobacteria by using a P system simulator, pages 127–156. In Ciobanu et al. [4], 2005.

[4] G. Ciobanu, Gh. Paun, and M.J. Perez-Jimenez, editors. Applications ofMembrane Computing. Springer Verlag, Berlin, Heidelberg, New York,2005.

[5] P. Frisco. The conformon-P system: A molecular and cell biology-inspired comutability model. Theoretical Computer Science, 312(2-3):295–319, 2004.

[6] D. T. Gillespie. A general method for numerically simulating thestochastic time evolution of coupled chemical reactions. J.Comp. Phys,22:403–434, 1976.

[7] D. T. Gillespie. Exact stochastic simulation of coupled chemicalreactions. J. Phys. Chem, 81:2340–2361, 1977.

[8] T. Lu, D. Volfson, L. Tsimring, and J. Hasty. Cellular growth anddivision in the Gillespie algorithm. IEE Systems Biology, 1:121–127,2004.

[9] Z. Michalewicz. Genetic algorithms + data structures = evolutionprograms. Springer Verlag, Berlin, Heidelberg, New York, 1999.

[10] I.A. Nepomuceno-Chamorro. A Java simulator for basic transition Psystems. Journal of Universal Computer Science, 10(5):620–629, 2004.

[11] G. Paun. Computing with membranes. Journal of Computer and SystemSciences, 1(61):108–143, 2000.

[12] G. Paun. Membrane Computing. An Introduction. Springer Verlag,Berlin, Heidelberg, New York, 2002.

[13] C. Zandron. P-systems web page: http://psystems.disco.unimib.it.

Page 69: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

61

Characterizing Tractability with Membrane CreationMiguel A. Gutierrez–Naranjo, Mario J. Perez–Jimenez, Agustın Riscos–Nunez, Francisco J. Romero–Campero

Research Group on Natural ComputingDpt. Computer Science and Artificial Intelligence, University of Sevilla

Avda. Reina Mercedes s/n, 41012 - Sevilla, SPAINEmail: {magutier, marper, ariscosn, fran}@us.es

Abstract— This paper analyzes the role that membrane disso-lution rules play in order to characterize (in the framework ofrecognizer P systems with membrane creation) the tractability ofdecision problems –that is, the efficient solvability of problems bydeterministic Turing machines. In this context, the use or not ofthese rules provides an interesting borderline between tractabilityand (presumable) intractability.

I. INTRODUCTION

Membrane Computing is a cross-disciplinary field of Nat-ural Computing with contributions by computer scientists,biologists and formal linguists that was introduced by Gh.Paun in [6]. Since then it has received important attentionfrom the scientific community. In fact, Membrane Computinghas been chosen by the Institute for Scientific Information as afast Emerging Research Front in Computer Science in October2003 [14].

This new non-deterministic model of computation startsfrom the assumption that the processes taking place in thecompartmental structure of a living cell can be interpreted ascomputations. The devices of this model are called P systems.Roughly speaking, a P system consists of a cell-like membranestructure, in the compartments of which one places multisets ofobjects which evolve according to given rules in a synchronousnon-deterministic maximally parallel manner1.

In living cells, new membranes are produced basicallythrough two processes, mitosis (membrane division) and au-topoiesis (membrane creation)2. These two processes haveinspired two variants of P systems, namely P systems withactive membranes and P systems with membrane creation.

P systems with active membranes have been successfullyused to design solutions to well-known NP-complete problems(e.g. [11], [12], [13]). Recently, the first (uniform) results re-lated to the computational efficiency using membrane creationhave arisen (see [2], [3]).

The paper is organized as follows. First, we summarize basicnotions on computational complexity in P systems. SectionIII recalls P systems with membrane creation. The conceptof dependency graph is defined in Section IV, providing acharacterization of standard class P in terms of recognizerP systems with membrane creation without using dissolution

1A detailed description can be found in [7] and further bibliography at [15].2Membranes are created in living cells, for instance, in the process of vesicle

mediated transport and in order to keep molecules close to each other tofacilitate their reactions. Membranes can also be created in a laboratory - see[4].

rules. A linear solution to QSAT by P systems with membranecreation is presented in Section V, showing a surprising roleof dissolution rules: using them we go beyond tractability.Finally, some conclusions are given in Section VI.

II. RECOGNIZER P SYSTEMS

In the structure and functioning of a cell, biological mem-branes play an essential role. The cell is separated from itsenvironment by means of a skin membrane, and it is internallycompartmentalized by means of internal membranes. Withinthe cell there are chemical substances that can participate invarious reactions, depending on the compartment where theyreside.

In this way, the main syntactic ingredients of a cell–likemembrane system (P system) are the membrane structure, themultisets, and the evolution rules.

• A membrane structure consists of several membranesarranged hierarchically inside a main membrane (theskin), and delimiting regions (the space in–between amembrane and the immediately inner membranes, if any).Each membrane identifies a region inside the system. Amembrane structure can be represented by a rooted tree.

• Regions defined by a membrane structure contain objects.We shall describe such objects by symbols, in such a waythat multisets of objects are located in the regions of themembrane structure.

• The objects can evolve according to given evolution rules,associated with the regions (hence, with the membranes).

For the semantics of the cell–like membrane systems we takea non–deterministic and synchronous mode (a global clock isassumed).

• A configuration of a cell–like membrane system consistsof a membrane structure and a family of multisets ofobjects associated with each region of the structure. Atthe beginning, there is a configuration called the initialconfiguration of the system.

• In each time unit we can transform a given configurationinto another one by applying evolution rules to the objectsplaced inside the regions, in a non–deterministic andmaximally parallel manner (the rules are chosen in a non–deterministic way, and in each region all objects that canevolve must do it). In this way, we get transitions betweenconfigurations.

• A computation of the system is a (finite or infinite)sequence of configurations such that each configuration

Page 70: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

62

–except the initial one– is obtained from the previous oneby a transition.

• A computation which reaches a configuration where nomore rules can be applied to the existing objects is calleda halting computation.

• The result of a halting computation is usually definedthrough the multiset associated with a specific outputmembrane (or the environment) in the final configuration.If the output is collected in the environment, then we saythat the system has external output.

Thus, a computation in a P system is summarized as follows:it starts with the initial configuration of the system, then thecomputation proceeds, and when it stops the result is to befound in the output membrane (or in the environment).

In this paper we use membrane computing as a frameworkto address the resolution of decision problems. In order tosolve these kinds of problems, having in mind that solvingthem is equivalent to recognizing the languages associatedwith them, we consider P systems as language recognizerdevices.

Definition 1: A P system with input is a tuple (Π,Σ, iΠ),where: (a) Π is a P system with working alphabet Γ,with p membranes labelled by 1, . . . , p, and initial multisetsM1, . . . ,Mp associated with them; (b) Σ is an (input) alpha-bet strictly contained in Γ and the initial multisets are overΓ−Σ; (c) iΠ is the label of a distinguished (input) membrane.

The semantics of a P system with input (Π,Σ, iΠ) is esen-tially the same as for Π. However, now the initial configurationof (Π,Σ, iΠ) is not unique, for every possible input multisetover Σ there is an associated initial configuration:

Definition 2: Let (Π,Σ, iΠ) be a P system with input. Let Γbe the working alphabet of Π, µ the membrane structure, andM1, . . . ,Mp the initial multisets of Π. Let m be a multisetover Σ. The initial configuration of (Π,Σ, iΠ) with input m

is (µ,M1, . . . ,MiΠ∪m, . . . ,Mp).

Let (Π,Σ, iΠ) be a P system with input. Let Γ be the work-ing alphabet of Π, µ the membrane structure andM1, . . . ,Mp

the initial multisets of Π. Let m be a multiset over Σ. Thenwe denote M∗

j= {(a, j) : a ∈ Mj}, for 1 ≤ j ≤ p, and

m∗ = {(a, iΠ) : a ∈ m}. This notation will be useful inSection IV.

Definition 3: A recognizer P system is a P system withexternal output such that:

1) The working alphabet contains two distinguished ele-ments yes and no.

2) All computations halt.3) If C is a computation of the system, then either object

yes or object no (but not both) must have been releasedinto the environment, and only in the last step of thecomputation.

In recognizer P systems, we say that a computation C is anaccepting computation (respectively, rejecting computation) ifthe object yes (respectively, no) appears in the environmentassociated with the corresponding halting configuration of C.Hence, these devices send to the environment an accepting orrejecting answer, at the end of their computations.

Let us recall that a decision problem X is a pair (IX , θX)where IX is a language over a finite alphabet (whose elementsare called instances) and θX is a predicate (a total booleanfunction) over IX .

Definition 4: Let X = (IX , θX) be a decision problem. LetΠ = (Π(n))n∈N be a family of recognizer P systems withinput. A polynomial encoding from X to Π is a pair (cod, s)of polynomial time computable functions over IX such that foreach instance w ∈ IX , s(w) is a natural number and cod(w)is an input multiset for the system Π(s(w)).

It is easy to prove that polynomial encodings are stableunder polynomial time reductions. More formally:

Proposition 1: Let X1, X2 be decision problems. Let r bea polynomial time reduction from X1 to X2. Let (cod, s) bea polynomial encoding from X2 to Π. Then (cod ◦ r, s ◦ r) isa polynomial encoding from X1 to Π.

Definition 5: Let X = (IX , θX) be a decision problem. LetΠ = (Π(n))n∈N be a family of recognizer P systems withinput. Let (cod, s) be a polynomial encoding from X to Π.

• We say that the family Π is sound with regard to(X, cod, s) if the following holds: for each instance of theproblem w ∈ IX , if there exists an accepting computationof Π(s(w)) with input cod(w), then θX(w) = 1.

• We say that the family Π is complete with regard to(X, cod, s) if the following holds: for each instanceof the problem u ∈ IX , if θX(u) = 1, then everycomputation of Π(s(u)) with input cod(u) is an acceptingcomputation.

Next, we propose to solve a decision problem througha family of P systems (constructed in polynomial time bya deterministic Turing machine) where each element of thefamily processes, in a specified sense, all the instances ofequivalent size.

Definition 6: Let R be a class of recognizer P systemswith input membrane. A decision problem X = (IX , θX) issolvable in polynomial time by a family Π = (Π(n))n∈N ofP systems from R, and we denote this by X ∈ PMCR, ifthe following holds:

• The family Π is polynomially uniform by Turing ma-chines, that is, there exists a deterministic Turing machineworking in polynomial time which constructs the systemΠ(w) from the instance w ∈ IX .

• There exists a polynomial encoding (cod, s) from X toΠ such that

– The family Π is polynomially bounded with regardto (X, cod, s), that is, there exists a polynomialfunction p, such that for each u ∈ IX every compu-tation of Π(s(u)) with input cod(u) is halting and,moreover, it performs at most p(|u|) steps.

– The family Π is sound and complete with regard to(X, cod, s).

It is easy to see that the class PMCR is closed underpolynomial–time reduction and complement (see [9] for de-tails).

Page 71: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

63

III. P SYSTEMS WITH MEMBRANE CREATION

In this section we recall the description of cellular deviceswith membrane creation. Basically there are two ways ofproducing new membranes in living cells: mitosis (membranedivision) and autopoiesis (membrane creation, see [4]).

The replication is one of the most important functions of acell and, in ideal circumstances, by division we can obtain anexponential number of cells in linear time.

One of the roles of membranes is to keep the moleculesof a compartment close to each other, in order to facilitatetheir reactions; when a compartment becomes too large, itoften happens that new membranes appear (are created) insideit (new membranes are produced under the influence of theexisting objects).

Both ways of generating new membranes have given riseto different variants of P systems: P systems with active mem-branes, where the new workspace is generated by membranedivision, and P systems with membrane creation, where thenew membranes are created from objects. Both models havebeen proved to be universal, but up to now there is no theo-retical result proving that these models simulate each other inpolynomial time. P systems with active membranes have beensuccessfully used to design solutions to many NP-completeproblems3, but as Gh. Paun pointed in [8] “membrane divisionwas much more carefully investigated than membrane creationas a way to obtain tractable solutions to hard problems”.Recently it has been shown that NP–complete problems canalso be uniformly solved in the membrane creation framework(see, e.g., [2], [3]).

Recall that a P system with membrane creation is a constructof the form Π = (Γ, H, µ,M1, . . . ,Mp, R) where:

1) p ≥ 1 is the initial degree of the system; Γ is the alphabetof objects and H is a finite set of labels for membranes;

2) µ is a membrane structure consisting of p membranes,with the membranes injectively labelled with elementsof H, and M1, . . . ,Mp are strings over Γ, describingthe multisets of objects placed in the p regions of µ;

3) R is a finite set of rules, of the following forms:(a) [a → u]h where h ∈ H , a ∈ Γ and u is a string

over Γ describing a multiset of objects. These areobject evolution rules associated with membranesand depending only on the label of the membrane.

(b) a[ ]h → [b]h where h ∈ H , a, b ∈ Γ. Theseare send-in communication rules. An object isintroduced in the membrane, possibly modified.

(c) [a]h → [ ]h b where h ∈ H , a, b ∈ Γ. These aresend-out communication rules. An object is sentout of the membrane, possibly modified.

(d) [a]h → b where h ∈ H , a, b ∈ Γ. These aredissolution rules. Under the influence of an object,a membrane is dissolved, while the object specifiedin the rule can be modified.

(e) [a → [u]h′ ]h where h, h′

∈ H , a ∈ Γ and u isa string over Γ describing a multiset of objects.These are creation rules. As the effect of the

3See [15] for a comprehensive bibliography of such solutions.

evolution of an object, a, a new membrane iscreated. This new membrane is placed inside themembrane of the object which triggers the rule andhas associated an initial multiset, u, and a label, h′.

Rules are applied according to the following principles:• Rules from (a) to (d) are used as usual in the framework

of membrane computing, that is, in a maximally parallelway. In one step, each object in a membrane can onlybe used for one rule (non–deterministically chosen whenthere are several possibilities), but any object which canevolve by a rule of any form must do it.

• Rules of type (e) are also used in a maximally parallelway. Each object a in a membrane labelled with h

produces a new membrane with label h′ placing in itthe multiset of objects described by the string u.

• If a membrane is dissolved, its content (multiset andinterior membranes) becomes part of the immediately ex-ternal membrane. The skin membrane is never dissolved.

• All the elements which are not involved in any of theoperations to be applied remain unchanged.

• The rules associated with the label h are used for allmembranes with this label, irrespectively of whether ornot the membrane is an initial one or it was obtained bycreation.

• Several rules can be applied to different objects in thesame membrane simultaneously. The exception are therules of type (d) since a membrane can be dissolved onlyonce.

We denote by MC−d (respectively, MC+d) the class ofrecognizer P systems with membrane creation and withoutdissolution rules (respectively, with dissolution rules).

IV. DEPENDENCY GRAPH OF A RECOGNIZER P SYSTEMWITH MEMBRANE CREATION

Let Π be a recognizer P system with membrane creationand without dissolution. Let R be the set of rules associatedwith Π.

Each rule can be considered, in some sense, as a dependencyrelationship between the object triggering the rule and theobject(s) produced by its application.

We can consider a general pattern for all kinds of rulesof such systems, except for dissolution rules, as follows:(a, h) → (a1, h

′)(a2, h′) . . . (as, h

′), according to the follow-ing criterion:

• The rules of type (a) correspond to the case h = h′,u = a1 . . . as, and s ≥ 1.

• The rules of type (b) correspond to the case h ∈ F (h′)and s = 1.

• The rules of type (c) correspond to the case h′ ∈ F (h)and s = 1.

• The rules of type (e) correspond to the case u = a1 . . . as,and s ≥ 1.

If h is the label of a membrane, then F (h) denotes the setof labels h′ ∈ H such that h′ is the label of the father of themembrane labelled by h in the initial configuration, or thereexist a ∈ Γ, u ∈ Γ∗ verifying [a → [u]h]h′ ∈ R, where R isthe set of rules associated with the system. Given h, h′ ∈ H

Page 72: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

64

the cost of determining whether or not h′ ∈ F (h) is of theorder O(|R|+ p), being p the number of initial membranes.

We adopt the convention that the set F (h) associated withthe skin membrane is the singleton whose only element is thelabel of the environment, denoted by env ∈ H .

For example, let us consider a general rule (a, h) →(a1, h

′) . . . (as, h′). Then we can interpret that from the object

a in membrane labelled by h we can reach the objectsa1, . . . , as in membrane labelled by h′.

We formalize these ideas in the following definition.Definition 7: Let Π be a recognizer P system with mem-

brane creation and without dissolution. Let R be the set ofrules associated with Π. The dependency graph associatedwith Π is the directed graph GΠ = (VΠ, EΠ) defined asfollows:

VΠ = V LΠ ∪ V RΠ,

(a, h) ∈ V LΠ if and only if:

• ∃u ∈ Γ∗ ([a→ u]h ∈ R), or• ∃b ∈ Γ ([a]h → [ ]hb ∈ R), or• ∃b ∈ Γ ∃h′ ∈ H (h ∈ F (h′) ∧ a[ ]h′ → [b]h′ ∈ R), or• ∃u ∈ Γ∗ ∃b ∈ Γ ∃h′ ∈ H (b ∈ alph(u) ∧ h ∈ F (h′) ∧

[a→ [u]h′ ]h ∈ R);

(b, h) ∈ V RΠ if and only if:

• ∃a ∈ Γ ∃u ∈ Γ∗ ([a→ u]h ∈ R ∧ b ∈ alph(u)), or• ∃a ∈ Γ ∃h′ ∈ H (h ∈ F (h′) ∧ [a]h′ → [ ]h′b ∈ R), or• ∃a ∈ Γ (a[ ]h → [b]h ∈ R), or• ∃a ∈ Γ ∃u ∈ Γ∗ ∃h′ ∈ F (h) (b ∈ alph(u) ∧ [a →

[u]h]h′ ∈ R);

((a, h), (b, h′)) ∈ EΠ if and only if:

• ∃u ∈ Γ∗ ([a→ u]h ∈ R ∧ b ∈ alph(u) ∧ h = h′) ∨([a]h → [ ]hb ∈ R ∧ h′ ∈ F (h)) ∨(a[ ]h′ → [b]h′ ∈ R ∧ h ∈ F (h′)), or

• ∃u ∈ Γ∗ (b ∈ alph(u) ∧ h ∈ F (h′) ∧ [a→ [u]h′ ]h ∈ R).

Proposition 2: Let Π be a recognizer P system with mem-brane creation and without dissolution. There exists a Turingmachine that constructs the dependency graph, GΠ, associatedwith Π, in polynomial time, that is, in a time bounded by apolynomial function depending on the total number of rulesand the maximum length of the rules.

Proof: A deterministic algorithm that, given a P systemΠ with the set R of rules, constructs the correspondingdependency graph, is the following:

Input: Π (with R as its set of rules)VΠ ← ∅; EΠ ← ∅

for each rule r ∈ R of Π do

if r = [a→ u]h ∧ alph(u) = {a1, . . . , as} then

VΠ ← VΠ ∪⋃

s

j=1{(a, h), (aj , h)};

EΠ ← EΠ ∪⋃

s

j=1{((a, h), (aj , h))}

if r = [a]h → [ ]hb then

for each h′ ∈ F (h) do

VΠ ← VΠ ∪ {(a, h), (b, h′)};

EΠ ← EΠ ∪ {((a, h), (b, h′))}

if r = a[ ]h → [b]h then

for each h′ ∈ F (h) do

VΠ ← VΠ ∪ {(a, h′), (b, h)};

EΠ ← EΠ ∪ {((a, h′), (b, h))}

if r = [a→ [u]h′ ]h ∧ alph(u) = {a1, . . . , as} then

VΠ ← VΠ ∪⋃

s

j=1{(a, h), (aj , h′)};

EΠ ← EΠ ∪⋃

s

j=1{((a, h), (aj , h′))}

The cost of this algorithm is of the order O(|R| ·(q+ |R|+p)),where q = max{length(r) : r ∈ R}, and p is the number ofinitial membranes.

Proposition 3: Let Π be a recognizer P system with mem-brane creation and without dissolution. Let ∆Π be definedas follows: (a, h) ∈ ∆Π if and only if there exists a path(within the dependency graph) from (a, h) to (yes, env).Then, there exists a Turing machine that constructs the set∆Π in polynomial time, that is, in a time bounded by apolynomial function depending on the total number of rulesand the maximum length of the rules.

Proof: We can construct the set ∆Π from Π as follows:• Construct the dependency graph GΠ associated with Π.• Consider the following algorithm:

Input: GΠ = (VΠ, EΠ)

∆Π ← ∅

for each (a, h) ∈ VΠ do

if there exists a path from (a, h) to(yes, env) in GΠ, then

∆Π ← ∆Π ∪ {(a, h)}

The running time of this algorithm is of the order O(|VΠ| ·|VΠ|

2), hence it is of the order O(|Γ|3 · |H|3), where Γ is theworking alphabet and H the set of labels of Π.

Remark 1: It is easy to design an algorithm running inpolynomial time solving the following decision problem: givena directed graph G, and two nodes a, b, determine whether ornot the node b is reachable from a, that is, whether or notthere exists a path in the graph from a to b. For example,given a directed graph G, and two nodes a, b, we considera depth–first–search with source a, and we check if b is inthe tree of the computation forest whose root is a. The totalrunning time of this algorithm is O(|V |+ |E|), that is, in theworst case is quadratic in the number of nodes. Moreover, thisalgorithm needs to store a linear number of items.

Proposition 4: Let X = (IX , θX) be a decision problem.Let Π = (Π(n))n∈N be a family of recognizer P systemswith input membrane solving X , according to Definition 6.Let (cod, s) be the polynomial encoding associated with thatsolution. Then, for each instance w of the problem X thefollowing assertions are equivalent:(a) θX(w) = 1 (that is, the answer to the problem is yes

for w).(b) ∆Π(s(w)) ∩ ((cod(w))∗ ∪

⋃p

j=1M∗

j) 6= ∅, where

M1, . . . ,Mp are the initial multisets of the systemΠ(s(w)).

Page 73: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

65

Proof: Let w ∈ IX . Then w ∈ LX if and only if thereexists an accepting computation of the system Π(s(w)) withinput multiset cod(w). But this condition is equivalent to thefollowing: in the initial configuration of Π(s(w)) with inputmultiset cod(w) there exists an object a ∈ Γ in a membranelabelled by h such that in the dependency graph the node(yes, env) is reachable from (a, h).

Hence, θX(w) = 1 if and only if ∆Π(s(w)) ∩M∗

1 6= ∅, or. . ., or ∆Π(s(w)) ∩M

p6= ∅, or ∆Π(s(w)) ∩ (cod(w))∗ 6= ∅.

Next, we show that, in the framework of recognizer P sys-tems with membrane creation (but not using dissolution rules),constructing in polynomial time an exponential workspace(number of membranes) is not enough to solve NP–completeproblems in polynomial time (unless P = NP).

Theorem 1: PMCMC−d= P.

Proof: We have P ⊆ PMCMC−dbecause the class

PMCMC−dis closed under polynomial time reduction.

Next, we show that PMCMC−d⊆ P. For that, let X ∈

PMCMC−d. Let Π = (Π(n))n∈N be a family of recognizer

P systems with membrane creation and without dissolutionsolving X , according to Definition 6. Let (cod, s) be thepolynomial encoding associated with that solution.

We consider the following deterministic algorithm:

Input: An instance w of X

- Construct the system Π(s(w)) with inputmultiset cod(w)

- Construct the dependency graph GΠ(s(w))

associated with Π(s(w))

- Construct the set ∆Π(s(w)) according toProposition 3

- Consider the following algorithm:

answer ← no; j ← 1

while j ≤ p ∧ answer =no do

if ∆Π(s(w)) ∩M∗

j6= ∅ then

answer ← yes

j ← j + 1

endwhile

if ∆Π(s(w)) ∩ (cod(w))∗ 6= ∅ then

answer ← yes

On one hand, the answer of this algorithm is yes if andonly if there exists a pair (a, h) belonging to ∆Π(s(w)) suchthat in the membrane labelled by h in the initial configuration(with input the multiset cod(w)) appears the symbol a.

On the other hand, a pair (a, h) belongs to ∆Π(s(w)) ifand only if there exists a path from (a, h) to (yes, env); thatthis, if and only if we can obtain an accepting computationof Π(s(w)) with input cod(w). Hence, the algorithm abovedescribed solves the problem X .

The cost to determine whether or not ∆Π(s(w)) ∩M∗

j6= ∅

(or ∆Π(s(w)) ∩ (cod(w))∗ 6= ∅) is of the order O(|Γ|2 · |H|2).Hence, the running in time of this algorithm can be bounded

by f(|w|) + O(|R| · q) + O(p · |Γ|2 · |H|2), where f is the

(total) cost of a polynomial encoding from X to Π, R the setof rules of Π, p is the initial number of membranes, and q =max {length(r) : r ∈ R}. But from Definition 6 we havethat all involved parameters are polynomials in |w|. That is,the algorithm is polynomial in the size |w| of the input.

V. SOLVING QSAT IN LINEAR TIME

In this section we design a family of recognizer P systemswith membrane creation (and using dissolution rules) whichsolves QSAT (the quantified satisfiability problem) in lineartime.

Given a boolean formula ϕ(x1, . . . , xn) in conjunctivenormal form, with boolean variables x1, . . . , xn, the sentenceϕ∗ = ∃x1∀x2 . . . Qnxnϕ(x1, . . . , xn) (where Qn is ∃ if n isodd, and Qn is ∀ otherwise) is said to be the (existential) fullyquantified formula associated with ϕ(x1, . . . , xn). Recall thata sentence is a boolean formula in which every variable is inscope of a quantifier.

We say that ϕ∗ is satisfiable if there exists a truth assign-ment, σ, over {i : 1 ≤ i ≤ n ∧ i odd} such that each exten-sion, σ∗, of σ over {1, . . . , n} verifies σ∗(ϕ(x1, . . . , xn)) = 1.

The QSAT problem is the following one: Given the (exis-tential) fully quantified formula ϕ∗ associated with a booleanformula ϕ(x1, . . . , xn) in conjunctive normal form, determinewhether or not ϕ∗ is satisfiable.

It is well known that QSAT is a PSPACE–complete prob-lem [5].

Next, we provide a polynomial time solution to QSAT bya family of recognizer P systems with membrane creation andusing dissolution rules, according to Definition 6.

The solution follows a brute force approach, in the frame-work of recognizer P systems with membrane creation, andconsists in the following phases:

• Generation and Evaluation Stage: Using membrane cre-ation, a binary complete tree is constructed. The leaves ofthat tree encode all possible truth assignments associatedwith the formula. Nodes whose level is even (respectively,odd) are codified by an OR gate (respectively, AND gate).So, we can consider the constructed tree as a booleancircuit that only have gates AND, OR. In this stage, thevalues of the formula corresponding to each assignmentis obtained in the leaves.

• Checking Stage: We proceed to compute the output ofthat boolean circuit from the inputs obtained in the leavesby propagating values along the wires and computing therespective gates until the output gate (the root of the tree)has assigned a value.

• Output Stage: The systems sends out to the environmentthe right answer according to the result of the previousstage.

Let us consider the pair function 〈 , 〉 defined by〈n,m〉 = ((n + m)(n + m + 1)/2) + n.

This function is polynomial-time computable (it is primitiverecursive and bijective from N

2 onto N).For any given boolean formula, ϕ(x1, . . . , xn) = C1 ∧

· · · ∧ Cm, in conjunctive normal form, with n variables and

Page 74: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

66

m clauses, we construct a P system Π(〈n,m〉) processingthe (existential) fully quantified formula ϕ∗ associated withϕ (when an appropriate input is supplied).

The family of recognizer P systems with membrane creationand using dissolution rules presented here is

Π = {(Π(〈n,m〉),Σ(〈n,m〉), i(〈n,m〉)) : (n,m) ∈ N2}

where the input alphabet is

Σ(〈n,m〉) = {xi,j , xi,j : 1 ≤ i ≤ m, 1 ≤ j ≤ n}

the input membrane is i(〈n,m〉) =< t,∨ >, and the P system

Π(〈n, m〉) = (Γ(〈n, m〉), H(〈n, m〉), µ,Ms,M<t,∨>, R(〈n, m〉))

is defined as follows:• Working alphabet, Γ(〈n,m〉), is

Σ(〈n,m〉) ∪{zj,c | j ∈ {0, . . . n}, c ∈ {∧,∨} } ∪{zj,c,l | j ∈ {0, . . . , n− 1}, c ∈ {∧,∨}, l ∈ {t, f}} ∪{xi,j,l, xi,j,l | j ∈ {1, . . . , n}, i ∈ {1, . . . ,m}, l ∈ {t, f}} ∪{xi,j | j ∈ {1, . . . , n}, i ∈ {1, . . . ,m}} ∪{ri, ri,t, ri,f | i ∈ {1, . . . ,m}} ∪{d1, . . . , dm, q, t0, . . . , t4, ans0, . . . , ans5} ∪{yes, yes∨, yes∗, yes∧, yes

∧, Y ES} ∪

{no, no∨, no∗, no∨, no∧, no

∧, NO}

• The set of labels, H(〈n,m〉), is

{< l, c >: l ∈ {t, f}, c ∈ {∧,∨}} ∪ {a, s, 1, . . . ,m}

• Initial membrane structure: µ = [ [ ]<t,∨> ]s• Initial multisets: Ms = ∅, M<t,∨> = {z0,∧,tz0,∧,f}• Input membrane: [ ]<t,∨>

• The set of evolution rules, R(〈n,m〉), consists of thefollowing rules (recall that λ denotes the empty string, andif c is ∧ then c is ∨, and if c is ∨ then c is ∧):

1. [zj,c → zj,c,t, zj,c,f ]<l,c>

[zj,c,l → [zj+1,c]<l,c>]<l′,c>

}

,

for l, l′ ∈ {t, f}, c ∈ {∨,∧}, j ∈ {0, . . . , n− 1}.The goal of these rules is to create one membrane for

each assignment to the variables of the formula. Firstly, theobject zj,c evolves to two objects, one for the assignmenttrue (the object zj,c,t), and a second one for the assignmentfalse (the object zj,c,f ). In a second step these objects willcreate two membranes. The new membrane with t in its labelrepresents the assignment xj+1 = true; on the other hand, thenew membrane with f in its label represents the assignmentxj+1 = false.

2. [xi,j → xi,j,txi,j,f ]<l,c>

[xi,j → xi,j,txi,j,f ]<l,c>

[ri → ri,tri,f ]<l,c>

,

for l ∈ {t, f}, i ∈ {1, . . . ,m}, c ∈ {∨,∧}, j ∈ {1, . . . , n}.These rules duplicate the objects representing the formula so

it can be evaluated on the two possible assignments, xj = true

(xi,j,t, xi,j,t) and xj = false (xi,j,f , xi,j,f ). The objects ri arealso duplicated (ri,t, ri,f ) in order to keep track of the clausesthat evaluate true on the previous assignments to the variables.

3. xi,1,t[ ]<t,c> → [ri]<t,c> xi,1,t[ ]<t,c> → [λ]<t,c>

xi,1,f [ ]<f,c> → [λ]<f,c> xi,1,f [ ]<f,c> → [ri]<f,c>

}

,

for i ∈ {1, . . . ,m}, c ∈ {∨,∧}.

According to these rules the formula is evaluated in the twopossible assignments for the variable that is being analyzed.The objects xi,1,t (resp. xi,1,f ) get into the membrane witht in its label (resp. f ) being transformed into the objectsri representing that the clause number i evaluates true onthe assignment xj+1 = true (resp. xj+1 = false). Onthe other hand, the objects xi,1,t (resp. xi,1,t) get into themembrane with f in its label (resp. t) producing no objects.This represents that these objects do not make the clause truein the assignment xj+1 = true (resp. xj+1 = false).

4. xi,j,l[ ]<l,c> → [xi,j−1]<l,c>

xi,j,t[ ]<l,c> → [xi,j−1]<l,c>

ri,t[ ]<l,c> → [ri]<l,c>

,

for l ∈ {t, f}, i ∈ {1, . . . ,m}, c ∈ {∨,∧}, j ∈ {2, . . . , n}.

In order to analyze the next variable the second subscript ofthe objects xi,j,l and xi,j,l are decreased when they are sentinto the corresponding membrane labelled with l. Moreover,following the last rule, the objects ri,l get into the newmembranes to keep track of the clauses that evaluate true onthe previous assignments.

5. [zn,c → d1 . . . dmq]<l,c>, for l ∈ {t, f} and c ∈ {∨,∧}.

At the end of the generation stage the object zn will producethe objects d1, . . . , dm and yes0, which will take part in thechecking stage.

6. [di → [t0]i]<l,c>

ri,t[ ]i → [ri]i [ri]i → λ

[tj → tj+1]i [t2]i → t3

,

for i ∈ {1, . . . ,m}, j ∈ {0, 1}, l ∈ {t, f}, c ∈ {∨,∧}.

Following these rules each object di creates a new mem-brane with label i where the object t0 is placed; this object willact as a counter. The object ri gets into the membrane labelledwith i and dissolves it preventing the counter ti from reachingthe object t2. The fact that the object t2 appears in a membranewith label i means that there is no object ri, that is, the clausenumber i does not evaluate true on the assignment associatedwith the membrane; therefore neither does the formula on theassociated assignment.

7. [q → [ans0]a]<l,c>

t3[ ]a → [t4]a [t4]a → λ

[ansh → ansh+1]a [ans5]a → yes

[ans5 → no]<l,c>

,

for l ∈ {t, f}, c ∈ {∨,∧}, h = 0, . . . , 4.

The object q creates a membrane with label a where theobject ans0 is placed. The object ansh evolves to the objectansh+1; at the same time the objects t3 can get into themembrane labelled with a and dissolve it preventing the objectyes from being sent out from this membrane.

Page 75: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

67

8. [yes]<l,c> → yesc [no]<l,c> → noc

[yes∨]<l,∨> → yes∗ [no∨ → no∨]<l,∨>

[yes∗ → yes∧]<l,∧> [no∨]<l,∨> → no∧

[no∨→ λ]<l,∧> [yes∨ → λ]<l,∧>

[no∧]<l,∧> → no∗ [yes∧ → yes∧]<l,∧>

[no∗ → no∨]<l,∨> [yes∧]<l,∧> → yes∨

[no∧→ λ]<l,∨> [yes

∧→ λ]<l,∨>

[yes∗]s → Y ES [ ]s [no∧]s → NO [ ]s

,

for l ∈ {t, f}.This set of rules controls the output stage. After the evalua-

tion stage, from each working membrane we obtain an objectyes or no depending on whether the assignment associatedwith this membrane satisfies or not the formula. Contraryto the SAT problem, in QSAT it is not enough that oneassignment satisfies the formula, but the final answer is YESif an appropriate combination of assignments according to thequantifiers ∃ and ∀ is found.

A. An overview of the computationFirst of all we define a polynomial encoding of the QSAT

problem in the family Π constructed in the previous sec-tion. Given a boolean formula in conjunctive normal form,ϕ = C1 ∧ . . . ∧ Cm such that V ar(ϕ) = {x1, . . . , xn},and considering ϕ∗ the (existential) fully quantified formulaassociated with it, we define s(ϕ∗) = 〈n,m〉 (recall thebijection mentioned in the previous section) and cod(ϕ∗) ={xi,j : xj ∈ Ci} ∪ {xi,j : ¬xj ∈ Ci}.

Next we describe informally how the recognizer P systemwith membrane creation Π(s(ϕ∗)) with input cod(ϕ∗) works.

In the initial configuration we have the input multisetcod(ϕ∗) and the objects z0,∧,t and z0,∧,f placed in the inputmembrane (membrane labelled with < t,∨ >). In the first stepof the computation the object z0,∧,t creates a new membranewith label < t,∨ > which represents the assignment x1 =true and the object z0,∧,f creates a new membrane with label< f,∨ > which represents the assignment x1 = false. Thesecond component of the labels, i.e., ∧ and ∨ will be used inthe output stage.

In these two new membranes the object z1,∨ is placed. Atthe same time the input multiset representing the formula ϕ∗

is duplicated following the two first rules in group 2. In thenext step, according to the rules in group 3, the formula isevaluated on the two possible assignments for x1. In the samestep the rules in group 4 decrease the second subscript ofthe objects representing the formula (xi,j,l, xi,j,l with j ≥ 2)in order to analyze the next variable. Moreover, at the sametime, the object z1,c produces the object z1,c,t and z1,c,f (c ∈{∧,∨}) and the system is ready to analyze the next variable.The generation and evaluation stage goes on in this way untilall the possible assignments to the variables are generated andthe formula is evaluated on each of them. Observe that it takestwo steps to generate the possible assignments for a variableand evaluate the formula on them; therefore the generation andevaluation stage takes 2n steps.

The checking stage starts when the object zn,c producesthe objects d1, . . . , dm and the object q. In the first step of the

checking stage each object di, for i = 1, . . . ,m, creates a newmembrane labelled with i where the object t0 is placed, andthe object q creates a new membrane with label a placing theobject yes0 in it.

The objects ri,t, which indicate that the clause number i

evaluates true on the assignment associated with the mem-brane, are sent into the membranes by the last rule in group4 so the system keeps track of the clauses that are true.The objects ri,t get into the membrane with label i anddissolves it in the following two steps preventing the countert2 from dissolving the membrane and producing the object t3according to the last rule in group 6. If for some i there is noobject ri, which means that the clause i does not evaluate trueon the associated assignment, the object t2 will dissolve themembrane labelled with i producing the object t3 that willget into the membrane with label a where the object ansh

evolves following the rules in group 7. The object t4 dissolvesthe membrane with label a preventing the production of theobject ans5. Therefore the checking stage takes 7 steps.

Finally the output stage takes place according to the rulesin group 8. If some object ans5 is present in any membranewith label < l, c >, (l ∈ {t, f}, c ∈ {∧,∨}), this means thatthere exists at least one clause not satisfied by the assignmentassociated with the membrane, and by the last rule in group7 we obtain no in this membrane. Otherwise, the object ans5

will be inside the membrane with label a, it will dissolve themembrane, and send yes to the working membrane.

At this point, in each of the 2n working membranes wehave an object yes or no depending on if the associatedassignment satisfies or not the formula ϕ. In the last steps wecontrol the flow of the objects yes and no from the workingmembranes to the environment. Basically, the process is thefollowing: if there is one object yes inside a membrane with ∨in its label, this object dissolves the membrane and sends outanother yes; if this does not happen, i.e., if two objects no areinside a membrane with label ∨, the membrane is dissolvedand no is sent out. Analogously, if there is one object no

inside a membrane with ∧ in its label, this object dissolvesthe membrane and sends out another no. Otherwise, if twoobjects yes are inside a membrane with label ∨, the membraneis dissolved and yes is sent out.

If the answer is affirmative, then the system halts in the(4n+8)–step. If, on the contrary, the answer is negative, thenthe system halts in the (4n+9)–step.

Hence, the family Π of recognizer P systems with mem-brane creation using dissolution rules solves in polynomial(actually, linear) time QSAT according to Definition 6. So,we have the following result.

Theorem 2: QSAT ∈ PMCMC+d

Corollary 1: PSPACE ⊆ PMCMC+d

Proof: It suffices to remark that the QSAT problem isPSPACE–complete, QSAT ∈ PMCMC+d

, and this com-plexity class is closed under polynomial time reduction.

VI. CONCLUSIONS

It is a very interesting issue to obtain conditions providinga distinction between tractable problems (that is, those that

Page 76: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

68

are solvable by computational devices running in polynomialtime) and the problems that are not tractable.

This paper is focused in that direction and it wishes to stressthe relevant role played by an apparently innocent operation(as dissolution rules) in order to “separate” the complexityclasses P and PSPACE. Thus, in the framework of recognizerP systems with membrane creation, dissolution rules permit todistinguish the tractability of decision problems, suppossingP 6= PSPACE.

In our characterization of the class P, we have used theconcept of dependency graph, that initially was defined to helpto design strategies looking for short computations of confluentmembrane systems. We characterize the accepting computa-tions of recognizer P systems with membrane creation andwithout dissolution through the reachability of a distinguishednode of the graph from other nodes associated with the initialconfiguration.

ACKNOWLEDGMENT

This work is supported by Ministerio de Ciencia y Tec-nologıa of Spain, by Plan Nacional de I+D+I (2000–2003)(TIC2002-04220-C03-01), cofinanced by FEDER funds, andby a FPI fellowship (University of Seville), in the case of thefourth author.

REFERENCES

[1] M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, A. Riscos-Nunez: A fast Psystem for finding a balanced 2-partition. Soft Computing, 9, 9 (2005),673–678.

[2] M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, F.J. Romero-Campero: Alinear solution of Subset Sum Problem by using Membrane Creation.In Mechanisms, symbols and models underlying cognition, First Interna-tional Work-Conference on the interplay between Natural and ArtificialComputation, IWINAC 2005 (J. Mira, J.R. Alvarez, eds.), LNCS 3561(2005), 258–267.

[3] M.A. Gutierrez-Naranjo, M.J. Perez-Jimenez, F.J. Romero-Campero:Solving SAT with Membrane Creation. In Computability in Europe 2005,CiE 2005: New Computational Paradigms (S. Barry Cooper, B. Lowe,L. Torenvliet, eds.), Report ILLC X-2005-01, University of Amsterdam,82–91.

[4] P.L. Luisi: The chemical implementation of autopoiesis, Self-Productionof Supramolecular Structures (G.R. Fleishaker et al., eds.), Kluwer,Dordrecht, 1994.

[5] Ch.H. Papadimitriou: Computational Complexity, Addison-Wesley Pub-lishing Company, Reading, Massachusetts, 1995.

[6] Gh. Paun: Computing with membranes, Journal of Computer and SystemSciences, 61, 1 (2000), 108–143.

[7] Gh. Paun: Membrane Computing. An Introduction, Springer–Verlag,Berlin, 2002.

[8] Gh. Paun: Further open problems in membrane computing. Proceedingsof the Second Brainstorming Week on Membrane Computing (Gh. Paun,A. Riscos-Nunez, A. Romero-Jimenez, F. Sancho-Caparrini, eds.), ReportRGNC 01/04, University of Seville, 2004, 354–365.

[9] M.J. Perez–Jimenez: An approach to computational complexity in Mem-brane Computing. In Membrane Computing, 5th International Workshop,WMC5, Revised Selected and Invited Papers (G. Mauri, Gh. Paun, M.J. Perez-Jimenez, G. Rozenberg, A. Salomaa, eds.), LNCS 3365 (2005),85–109.

[10] M.J. Perez-Jimenez, F.J. Romero-Campero: Solving the Bin Packingproblem by recognizer P systems with active membranes. Proceedingsof the Second Brainstorming Week on Membrane Computing (Gh. Paun,A. Riscos-Nunez, A. Romero-Jimenez, F. Sancho-Caparrini, eds.), ReportRGNC 01/04, University of Seville, 2004, 414–430.

[11] M.J. Perez-Jimenez, A. Riscos-Nunez: Solving the Subset-Sum problemby P systems with active membranes, New Generation Computing, 23, 4(2005), 367–384.

[12] M.J. Perez-Jimenez, A. Riscos-Nunez: A linear–time solution for theKnapsack problem using P systems with active membranes, MembraneComputing (C. Martın-Vide, G. Mauri, Gh. Paun, G. Rozenberg, A.Salomaa, eds.), LNCS 2933 (2004), 250–268.

[13] M.J. Perez-Jimenez, A. Romero-Jimenez, F. Sancho-Caparrini: A poly-nomial complexity class in P systems using membrane division, Proceed-ings of the 5th Workshop on Descriptional Complexity of Formal Systems,DCFS 2003, (E. Csuhaj-Varju, C. Kintala, D. Wotschke, Gy. Vaszil, eds.),2003, 284-294.

[14] ISI web page: http://esi-topics.com/erf/october2003.html[15] P systems web page: http://psystems.disco.unimib.it/

Page 77: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

69

P Systems Generating 3D Rectangular PictureLanguages

S.Hemalatha∗, K.S.Dersanambika†, K.G.Subramanian‡and C. Sri Hari Nagore∗ ∗Department of Applied Sciencesand Humanities

Madras Institute of TechnologyAnna University,

Chennai 600 044,India †Department of MathematicsFatima Mata National CollegeKollam, Kerala 629004, India

email: [email protected] ‡ Department of Mathematics,Madras Christian College,

Chennai 600 059,Indiaemail: [email protected]

Abstract— Generation of 3D rectangular picture languagesusing tissue-like P system with active membranes is consideredin this paper.

I. INTRODUCTION

Three dimensional (3D) pictures are cubical arrayscomposed of unit blocks (1 × 1 × 1 blocks) called 3D pixels.A three dimensional language is a collection of 3D pictures.Here we extend the two dimensional model of Ceterchi etal [1] using P systems [4], which are computing modelsinspired from the structure and function of the living cells.Inthe context of pattern analysis 3D array grammars have beenconsidered in [5]. In our model, each membrane represents a3D rectangular pixel of the picture. It holds the symbol of theoutput alphabet of the picture or a # and also informationon its position in the 3D picture. Other types of informationencoded in a membrane are related to the two main processesthat take place in the system, the process of generatingnew adjacent 3D rectangular pixels in the form of similarmembranes - implemented by membrane division rules - andthe process of checking some locality conditions imposedon the language that we intend to generate - implementedby communication (symport) rules. In section 2, we recallsome basic definitions of three dimensional languages.The tissue-like membrane system with active membranesgenerating 3D pictures is specified in section 3 and in section4, the model is applied to the generation of local 3D picturelanguages.

II. THREE-DIMENSIONAL PICTURE LANGUAGES

For a given alphabet V , a 3D picture p of size l×m×n overV is a 3D array of the form p = (aijk)

i∈1,l, j∈1,m, k∈1,nwith

aijk ∈ V for i ∈ i, l, j ∈ 1,m, k ∈ 1, n. We denote V ∗∗∗

the set of all 3D pictures over V (including the empty picturedenoted by λ). A 3D picture language over V is a subset of

V ∗∗∗ . A 3D subpicture of a 3D picture p is a 3D sub arrayof p. A (2× 2× 2) subpicture of p is called a cube of p. Theset of all cubes of p is denoted by B2,2,2(p). In the sequel,we will identify the boundaries of a picture by surroundingit with the marker #. A picture p, bounded by markers # isdenoted by p [2]. We recall the notion of local 3D rectangularpicture languages introduced in[2]

A 3D rectangle of the form given below is called a cubeover the alphabet {a, b, c, d, e, f, g, h}.

¡¡¡

¡¡¡

¡¡¡

¡¡¡

a b

c d

e f

g h

Given a 3D rectangle p, Bg,h,k(p) denotes the set of all sub3D rectangles p of size (g, h, k), cube is a 3D rectangle ofsize (2, 2, 2).We denote by V l×m×n the set of 3D rectanglesof size (l,m, n) over the alphabet V . B2,2,2(p) is in fact a setof cubes.

Definition 1. Let V be a finite alphabet. The 3D rectangularpicture language L ⊂ V ??? is local if there exists a set of cubes4 ⊆ (V ∪ {#})2×2×2 such that L = {p ∈ V ???|B2,2,2(p) ⊆4}.

The family of 3D local picture languages, denoted by 3DLOC, is a generalization to the three dimensional case oflocal languages defined in [3]. Given a set of cubes ∆, the3D local picture language L generated by ∆ is denoted byL(∆).

III. GRID-LIKE P SYSTEMS FOR GENERATING 3DPICTURES

For generating two-dimensional pictures, in [1] Tissue- likeP systems with active membranes were proposed, based on

Page 78: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

70

the features of tissue-like P systems (see section 6.2 in [4])and P systems with active membranes (see section 7.2 in [4]),but with certain differences. We refer to [1] for the definitionof such a system.

We generate 3D pictures over a given alphabet V ∪ {#};where # is a special character for the picture’s border applyingthe parallel formalism as described in [1]. The difference liesmainly in the formation of rules. For the sake of completenesswe give the full details.

The output alphabet of our P system will be exactly V ∪{#}.

A picture is generated by the evolution of an initial Psystem into a stable P system. The 3D rectangular pictureis read from the entire configuration of the resulting (stable)P system, each membrane corresponding to a 3D pixel of the3D picture. Implicitly, the underlying communication graphof the P system is a 3D rectangular grid in which each innernode is connected with six neighbors, each marginal node withfour neighbors and each corner with three neighbors. In orderto guarantee that our P system generates only 3D pictures,we distinguish 8 corner nodes, 12 marginal nodes(edges)6 face nodes and 1 inner node. Thus we have totally 27regions. We denote by T = {ijk|i, j, k ∈ {0, 1, 2}} the set oflabels corresponding to these positions shown in the followingfigures.

002 012 022

021011001

000 010 020

¡¡

¡¡

¡¡ ¡¡¡¡¡¡

¡¡¡¡¡¡

¡¡

¡¡

¡¡ ¡¡¡¡¡¡

¡¡

¡¡

¡¡

¡¡¡¡¡¡

-

6

¡¡ª

000 010 020

120110100

200 210 220

000

001

002

102

101

100

200

201

202

,

¡¡

¡¡

¡¡

¡¡¡¡¡¡

¡¡¡¡¡¡

¡¡¡¡¡¡

¡¡¡¡¡¡¡

¡¡

¡¡¡

¡¡¡¡¡¡

-

¡¡ª

6

202 212 222

221211201

200 210 220220

221

222

122

121

120

020

021

022

202 212 222

122112102

002 012 022

101 001201

202 102 002

000100200,

011 021001

002 012 022

020010000,

110 120100

000 010 020

220210200,

112 122102

002 012 022

222212202,

211 221201

202 212 222

220210200,

121 021221

222 122 022

020120220,

111 121101

001 011 021

221211201,

111 121101

102 112 122

120110100,

111 211011

012 112 212

210110010

We codify these grid positions in our P system by allowing27 symbols (pt)t∈T such that at any moment, in any membraneat least one of these symbols is present. Every membrane in thesystem, after its creation, checks for the type of its neighbors,by communicating to them a symbol, which represents apossible neighbor type. For example a membrane containingthe symbol p120 (marginal) will have neighbors p121, p122 ontop or p020(back corner) or p220(front corner) or p100, p110

left. If two different symbols pt and ps are present in thesame time in the membrane then a killer (a special symbol k)is produced in that membrane and during the next evolutionstep, the killer dissolves the membrane. Only those P systemshaving a 3D rectangular grid as a communication graph willbe stable. In this way we will check by local tests for thewhole integrity of the grid.

The generation of any picture will start from its back leftbottom corner. Thus, any stable P system will evolve froman initial P system, containing only one membrane and twosymbols: the marker p000 and the output start symbol ( aspecial symbol s ). The output start symbol evolves, in any

Page 79: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

71

membrane m in which it is present, either in # if m isa membrane on the 3D picture’s borders or in an arbitrarysymbol from V if m is an inner membrane.

The P systems may also check for further properties of the3D picture, expressed by local conditions as explained in thenext section. Local tests are performed by special symbolscalled checkers, employed by checking rules that depend onthe specific properties of the 3D language. The tests are startedfrom any suitable membrane by the checking start symbol (the special symbol c). If the P systems contains no furtherchecking rules, then it generates all the 3D pictures over thegiven alphabet V ∪ {#}.

A membrane label from the set is a multiset over a threeletter alphabet {f,r,t}. Considering f, r and t indicates front,right and top positions respectively, the label of a membranewill represent the ( class of equivalent) path(s), which lead(s)from the back left bottom corner of the 3D grid (λ membrane)to the given membrane. In this way positions can be commu-nicated with respect to the given membrane (+f for front, -ffor back, +r for right, -r for left, +t for top, -t for bottom).

Definition 2. Formally, a grid-like P system with activemembranes is a tissue-like P system with active membranes.A = (O, V,M, (contm)m∈M , R) such that• O = V ∪ {#} ∪ {pt|t ∈ T} ∪ C ∪ {s, c, k}, The symbols(pt|t ∈ T ) indicate the type of the membrane with respectto the positions into the 3D grid. The symbols in C arecheckers.The symbols s, c and k are the output start symbol,the checking start symbol and the killer, respectively.• M ⊆ (f + r + t)∗, A membrane label is considered as amultiset over f, t and r. If m ∈ M and x ∈ {f, r, t} then bym-x, we mean the multiset obtained from m by deleting oneoccurrence of x and by m+x we mean the multiset obtainedfrom m by adding one occurrence of x.• The multiset contm represents the content of the mem-

brane labeled by m.• The set of rules R is divided into four groups, as described

below.Creation rules: These rules are creating the 3D grid of

membranes and checking for the integrity {3Dpicture} ofthe grid.

1) [p000s]m→p000#c[pi00s]m+f [p0j0s]m+r

[p00ks]m+t, where i, j, k ∈ {1, 2}. The output startsymbol s, in the presence of the marker p000 evolvesto #c. Because of the presence of p000, m should bethe membrane λ (the back left bottom corner of thegrid), which has (or should have) three neighbors front,right and to the top. The top neighbor must be back lefttop corner or back left margin of the grid, m dividesto produce the membrane m+t with p001s or p002s. Asimilar effect is taken for the membrane m+f and m+r.

2) [p100s]m→p100#c[pi00]m−f [pi′oos]m+f

[p1j0s]m+r[p10ks]m+t,where i ∈ {0, 1}, i′, j, k ∈{1, 2}. The output start symbol s, in the presence of themarker p100 evolves to #c. Because of the presenceof the marker p100, m should be a membrane on thebottom margin of the grid, which has(or should have)four neighbors, top, to the right, to the back and tothe front. The back neighbor already exists, thus m

will send either p000 or p100 to the membrane m-fin order to check its type. For the above neighbor,m occurs(non-deterministically) for its creation withanother membrane in the system, namely (m-f)+r. If m”wins”, then it divides to produce (m-f)+r and declaresits type by writing either p110 or p120 in it. If not, thispart of the rule is treated as a symport rule and m willsend to the membrane m+r either p110 or p120 in orderto check its type. Then, m divides to produce m+t withthe content p101s or p102s and to produce m+f with thecontent p100s or p200s.

Analogously with rules 1 and 2, we construct the fol-lowing rules.

3) [p200s]m→p200#c[pi00]m−f [p2j0s]m+r

[p20ks]m+t, where i ∈ {0, 1}, j, k ∈ {1, 2}.4) [p010s]m→p010#c[pi10s]m+f [p0j0]m−r

[p0j′0s]m+r[p01ks]m+t, where i, j′, k ∈ {1, 2}, j ∈{0, 1}.

5) [p110s]m→p110#c[pi10]m−f [pi′10s]m+f

[p1j0]m−r[p1j′0s]m+r[p11ks]m+t, where i, j ∈ {0, 1},i′, j′, k ∈ {1, 2}.

6) [p210s]m→p210#c[pi10]m−f [p2j0]m−r

[p2j′0s]m+r[p21ks]m+t,where i, j ∈ {0, 1}, j′, k ={1, 2}.

7) [p020s]m→p020#c[pi20s]m+f [p0j0]m−r

[p02ks]m+t, where i, k ∈ {1, 2}, j ∈ {0, 1}.8) [p120s]m→p120#c[pi20]m−f [pi′20s]m+f

[p1j0]m−r[p12ks]m+t, where i, j ∈ {0, 1}, i′, k ∈ {1, 2}.9) [p220s]m→p220#c[pi20]m−f [p2j0]m−r

[p22ks]m+t, where i, j ∈ {0, 1}, k ∈ {1, 2}.10) [p001s]m→p001#c[pi01s]m+f [p0j1s]m+r

[p00k]m−t[p00k′s]m+t,where i, j, k′ ∈ {1, 2}, k ∈{0, 1}.

11) [p101s]m→p101#c[pi01]m−f [pi′01s]m+f

[p1j1s]m+r[p10k]m−t[p10k′s]m+t,where i, k ∈ {0, 1},i′, j, k′ ∈ {1, 2}.

12) [p201s]m→p201#c[pi01]m−f [p2j1s]m+r

[p20k]m−t[p20k′s]m+t, where i, k ∈ {0, 1}, j, k′ ∈{1, 2}.

13) [p011s]m→p011#c[pi11s]m+f [p0j1]m−r

[p0j′1s ]m+r[p01k]m−t

[p01k′s ]m+t, where i, j′, k′ ∈ {1, 2}, j, k ∈ {0, 1}.14) [ p111s ]m→p111lc [pi11 ]m−f [pi′11s ]m+f

[p1j1 ]m−r[p1j′1s ]m+r

[p11k ]m−t[p11k′s ]m+t, with l ∈ V , i, j, k ∈ {0, 1},i′, j′, k′ = {1, 2}.Analogously with rules 1 or 2, with the only notabledifference that s evolves to lc, where l is an arbitrarysymbol from V .

15) [p211s]m→p211#c[pi11]m−f [p2j1]m−r

[p2j′1s]m+r[p21k]m−t

[p21k′s]m+t, where i, j, k ∈ {0, 1}, j′, k′ ∈ {1, 2}.16) [p021s]m→p021#c[pi21s]m+f [p0j1]m−r

[p02k]m−t[p02k′s]m+t,where i, k′ ∈ {1, 2}, j, k ∈{0, 1}.

17) [p121s ]m→p121#c[pi21 ]m−f [pi′21s]m+f

Page 80: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

72

[p1j1]m−r[p12k]m−t[p12k′s]m+t,where i, j, k ∈ {0, 1},i′, k′ ∈ {1, 2}.

18) [p221s]m→p221#c[pi21]m−f [p2j1]m−r

[p22k]m−t[p22k′s]m+t, where i, j, k ∈ {0, 1}, k′ ∈{1, 2}.

19) [p002s]m→p002#c[pi02s]m+f [p0j2s]m+r

[p00k]m−t,where i, j ∈ {1, 2}, k ∈ {0, 1}.20) [p102s]m→p102#c[pi02]m−f [pi′02s]m+f

[p1j2s]m+r[p10k]m−t, where i, k ∈ {0, 1}, i′, j ∈ {1, 2}.21) [p202s]m→p202#c[pi02 ]m−f [p2j2s]m+r

[p20k]m−t, where i, k ∈ {0, 1}, j ∈ {1, 2}.22) [p012s]m→p012#c[pi12s]m+f [p0j2]m−r

[p0j′2s]m+r[p01k]m−t,where i, j′ ∈ {1, 2},j, k ∈ {0, 1}.23) [p112s]m→p112#c[pi12]m−f [pi′12s]m+f

[p1j2]m−r[p1j′2s]m+r

[p11k]m−t, where i, j, k ∈ {0, 1},i′, j′ ∈ {1, 2}.24) [p212s]m→p212#c[pi12]m−f [p2j2]m−r

[p2j′2s]m+r[p21k]m−t,where i, j, k ∈ {0, 1},j′ ∈ {1, 2}.25) [p022s]m→p022#c[pi22s]m+f [p0j2]m−r

[p02k]m−t, where i ∈ {1, 2},j, k ∈ {0, 1}.26) [p122s]m→p122#c[pi22]m−f [pi′22s]m+f

[p1j2]m−r[p12k]m−t,where i, j, k ∈ {0, 1},i′ ∈ {1, 2}.27) [p222s]m→p222#c[pi22]m−f [p2j2]m−r

[p22k]m−t, where i, j, k ∈ {0, 1}.Checking rules: The checking rules are dependent onthe specific language (or class of languages) that wewant to describe. If there are no checking rules, thenthe system describes all 3D pictures over V.Contamination rules: These rules are contaminating theP system with the killer that dissolves the membranes(by destruction rules).

28) [pijkpi′j′k′ ]m→k, with i, j, k, i′, j′, k′ ∈ {0, 1, 2} and(i, j, k) 6= (i′, j′, k′)Two different markers in the same membrane produce akiller.Some other contamination rules may appear as an effectof the checking failure.Destruction rules: By these rules, the killer spreads froma contaminated membrane all over the P system, whiledissolving the membranes in which it appears.

29) [p000k]m→[k]m+f [k]m+r[k]m+t. The killer in the pres-ence of a marker p000 is sent to the front, right and tothe top and dissolves the membrane m.

30) [p100k]m→[k]m−f [k]m+f [k]m+r[k]m+t. The killer, inthe presence of the marker p100 is sent to the back, front,right and to the top and dissolves the membrane m.Analogously with rules 29 or 30, we construct thefollowing rules.

31) [p200k]m→[k]m−f [k]m+r[k]m+t.32) [p010k]m→[k]m+f [k]m−r[k]m+r[k]m+t.33) [p110k]m→[k]m−f [k]m+f [k]m−r

[k]m−t[k]m+t.34) [p210k]m→[k]m−f [k]m−r[k]m+r[k]m+t.35) [p020k]m→[k]m+f [k]m−r[k]m+t.36) [p120k]m→[k]m−f [k]m+f [k]m−r[k]m+t.37) [p220k]m→[k]m−f [k]m−r[k]m+t.38) [p001k]m→[k]m+f [k]m+r[k]m−t[k]m+t.

39) [p101k]m→[k]m−f [k]m+f [k]m+r

[k]m−t[k]m+t.40) [p201k]m→[k]m−f [k]m+f [k]m+r[k]m−t.41) [p011k]m→[k]m+f [k]m−r[k]m+r

[k]m−t[k]m+t.42) [p111k]m→[k]m−f [k]m+f [k]m−r

[k]m+r[k]m−t[k]m+t.43) [p211k]m→[k]m−f [k]m−r[k]m+r

[k]m−t[k]m+t.44) [p021k]m→[k]m+f [k]m−r[k]m−t[k]m+t.45) [p121k]m→[k]m−f [k]m+f [k]m−r

[k]m−t[k]m+t.46) [p221k]m→[k]m−f [k]m−r[k]m−t[k]m+t.47) [p002k]m→[k]m+f [k]m+r[k]m−t.48) [p102k]m→[k]m−f [k]m+f

[k]m+r[k]m−t.49) [p202k]m→[k]m−f [k]m+r[k]m−t.50) [p012k]m→[k]m−f [k]m−r[k]m+r[k]m−t.51) [p112k]m→[k]m−f [k]m+f [k]m−r

[k]m+r[k]m−t.52) [p212k]m→[k]m−f [k]m−r

[k]m+r[k]m−t.53) [p022k]m→[k]m+f [k]m−r[k]m−t.54) [p122k]m→[k]m−f [k]m+f [k]m−r[k]m−t.55) [p222k]m→[k]m−f [k]m−r[k]m−t.

A 3D rectangular grid-like P system with active membranesA = (O, V,M, (contm)m∈M , R) is called initial over V ifand only if M = {λ} and contλ = {p000s}. With anystable alive 3D grid-like P system with active membranesA = (O, V,M, (contm)m∈M , R), we may associate a 3Dpicture over the alphabet V in the following way:

1) First we define three natural numbers, u, v, w by:• u = max{i|∃j, k.f irjtk ∈ M} − 1• v = max{j|∃i, k.f irjtk ∈ M} − 1• w = max{k|∃i, j.f irjtk ∈ M} − 1

2) If u, v, w are greater than 1, we consider the 3D rectan-gular pictures (aijk)

i=1,u,j=1,v,andk=1,w,with aijk = h

if and only if h ∈ contfirjtk∩V ; Otherwise, we considerthe empty picture.We define the 3D rectangular picture language generatedby an initial grid like P systems with active membraneA, as the set of 3D rectangular pictures associated withall 3D grid like P systems with active membranes fromthe stable universe of A.

Theorem 1. The language of all 3D rectangular picturesover an alphabet V can be generated by an initial grid-like Psystem with active membranes without any further checkingrules.

Proof. The construction of the P System with active mem-branes described in Definition 2 and the discussion prior to it(informal) on the working of the system ensure that the systemgenerates all 3D rectangular pictures.

IV. GENERATION OF 3D LOCAL PICTURE LANGUAGES

Generative power of 3D grid-like P systems with activemembranes includes the generation of local picture languages

Page 81: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

73

.Theorem 2. Any 3D local picture language L over an alphabetV can be generated by an initial grid-like P system with activemembranes.

Proof Let L be a 3D local picture language over analphabet V , defined by a given set of tiles. We considerA = (O, V,M, (contm)m∈M , R) an initial grid-like P systemwith active membrane over V ∪ {#} such that:• the set of checkers is C = {cα|α ∈ (V ∪ {#})+, |α| ≤ 7}• the subset of checking rules has the following elements:

1) [pijkxc]m→pijkx[cx]m+f ,i, j, k = 0, 1 and x ∈ V ∪{#}2) [pijkycx]m→pijky[cxy]m+r with i = 1, 2,j, k = 0, 13) [pijkzcxy]m→pijkz[cxyz]m−f with i, j = 1, 2, k = 0, 14) [pijkacxyz]m→pijka[cxyza]m+t with j = 1, 2, i, k =

0, 15) [pijkbcxyza]m→pijkb[cxyzab]m+f with j, k = 1, 2, i =

0, 16) [pijkecxyzab]m→pijke[cxyzabe]m−r with i, j, k = 1, 2,7) [pijkgcxyzabe]m→pijkg[cxyzabeg]m−f with i, k = 1, 2,

j = 0, 1•The following rules are added to the subset of contam-ination rules:

8) [xcijkl′m′n′y]→k if and only if there is no cube θ ∈ 4such that θ111 = i, θ211 = j, θ221 = k, θ121 = l′i,θ122 = m′, θ222 = n′, θ212 = y , θ112 = x

The P system constructed generates the language specified.

ACKNOWLEDGMENT

The authors thank the referees for their useful comments.

REFERENCES

[1] R. Ceterchi, R. Gramatovici, N. Jonoska, and K.G.Subramanian. Tissue-like P Systems with Active Membranes for Picture Generation, Funda-menta Informaticae, 311-328, 56 (2003)

[2] K.S. Dersanambika, K. Krithivasan. Local and Recognizable 3D-Rectangular Pictures, Presented in the 12th international conference ofJangeon Mathematical Society, South Korea held at Mysore University,2004.

[3] D. Giammarresi, A. Restivo. Two Dimensional Languages, Handbook ofFormal Languages, Volume 3, Springer-Verlag, Berlin.,215-265, 1997.

[4] Gh. Paun. Membrane Computing: An Introduction. Springer, 2002.[5] P.S. Wang.3D sequential / parallel universal array grammars for polyhe-

dral object pattern analysis,International Journal of Pattern Recognitionand Artificial Intelligence, 563-576, 8 (1994).

Page 82: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

74

Page 83: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

75

On Symport/Antiport P Systems with One or TwoSymbols

Oscar H. Ibarra and Sara WoodworthDepartment of Computer Science

University of CaliforniaSanta Barbara, California 93106, USA

Abstract— We look at the computational power of sym-port/antiport system (SA) acceptors and generators with smallnumbers of membranes and objects. We show that even witha single object and only three membranes, a SA acceptor canaccept the nonsemilinear set L = {2

n|n ≥ 0}. L can also be

accepted with two objects and only one membrane. This lattermodel can accept all unary semilinear (i.e., regular) sets. Wealso show that for any k ≥ 1, the class of sets of k-tuples ofnonnegative integers accepted by partially blind (multi-) countermachines is a proper subclass of the class of sets of k-tuplesaccepted by 1-object multi-membrane SA acceptors. Similarly,the class of sets of k-tuples of nonnegative integers generated bypartially blind counter machines is a subclass (but is not knownto be proper) of the class of sets of k-tuples generated by 1-object multi-membrane SA generators. As a corollary, the unarysemilinear sets are a proper subclass of the unary sets of numbersaccepted by SA acceptors with one object and 8 membranes.Whether or not 1-object multi-membrane SA acceptors (resp.,generators) are universal remains an interesting open question.

I. INTRODUCTION

One of the most popular models of P systems is a modelknown as symport/antiport systems. (See [8] for an introduc-tion to concepts and notations of P systems.) Symport/antiportsystems (SA systems) allow rules of the form (u, in), (v, out),and (u, in; v, out) where u, v are strings representing multisetsover Σ. Formally, the system is defined as

Π = (Σ, µ, w1, · · · , wm, E,R1, · · · , Rm, io)

where Σ is the alphabet of the system, µ is the membranestructure, wi is the initial multiset of objects within membranei, E is the set of objects available in infinite quantities in theenvironment, Ri is the set of rules associated with membranei, and io is the input/output membrane of the system (foracceptors/generators respectively). In this paper, the term E

is always equivalent to Σ and hence omitted.SA systems are known to be computationally complete:

constructions have been given to convert counter machines intoequivalent SA systems. Recently, new SA completeness resultstry to determine how “minimal” of a system is needed forthe completeness result to still hold. Minimal systems restrictmany aspects of the system including how many objects areused, how many membranes are used, and the size of the ruleswhich are used. The most recent results can be found in [1]where the number of symbols can be limited to 3 and thenumber of membranes to 3 and computational completeness isstill achieved. This result was expanded to show that 2 objects

and 4 membranes, 4 objects and 2 membranes, and 5 objectsand 1 membrane are also computationally complete.

However, the question of whether a single object with anynumber of membranes is computationally complete remainsopen. The question of the precise power of very simple SAsystems with either 1, 2, or 3 symbols and less than 5, 4, and3 membranes respectively is also of interest. These are thequestions which we discuss here.

The notation used in this paper follows the notation usedin [1] since our results build on their results and solves somequestions which were posed. We use the notation g(k)NOsPm

to denote the sets of k-dimensional vectors (of nonnegativeintegers) which are generated by systems with at most s

symbols and m membranes. The notation a(k)NOsPm is usedto denote the sets of k-dimensional vectors which are acceptedby systems with at most s symbols and m membranes.The family of all finite sets of natural numbersis denotedas NFIN while the family of all regular sets of naturalnumbers is denoted as NREG. N and Nk denote the setof all nonnegative integers and the set of all k-dimensional(k-tuples) of nonnegative integers, respectively.

In [1], the following results were shown. (These resultsimprove the results found in [9].)

1) {ki|i ∈ N} ∈ a(1)NO1P1

2) NFIN ⊆ a(1)NO2P1

3) NFIN = g(1)NO1P1

4) NREG ⊆ g(1)NO1P2

5) NREG ⊆ g(1)NO2P1

Here we improve upon these results and are able to showthe following:

1) NREG ( a(1)NO2P1

2) L = {2n|n ∈ N} ∈ a(1)NO1P3

3) NREG ( a(1)NO1P8

4) For any k ≤ m, the class of sets of k-tuples of non-negative integers accepted by partially blind m-countermachines ( a(k)NO1P5m+3.

5) For any k ≤ m, the class of sets of k-tuples ofnonnegative integers generated by partially blind m-counter machines ⊆ g(k)NO1P5m+3.

The last two items above improve a result in [9] where itwas shown that a partially blind m-counter machine can besimulated by a SA system with two objects and 3(m + 1)membranes.

We conclude this section by recalling the definition of a

Page 84: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

76

semilinear set [2]. Let k be a positive integer. A subset R ofNk is a linear set if there exist vectors v0, v1, . . . , vt in Nk

such that R = {v | v = v0 + m1v1 + · · · + mtvt, mi ∈N}. The vectors v0 (referred to as the constant vector)and v1, v2, . . . , vt (referred to as the periods) are called thegenerators of the linear set R. The set R ⊆ Nk is semilinearif it is a finite union of linear sets. The empty set is a trivial(semi)linear set, where the set of generators is empty. Everyfinite subset of Nk is semilinear – it is a finite union of linearsets whose generators are constant vectors. It is also clearthat the semilinear sets are closed under (finite) union. It isalso known that they are closed under complementation andintersection.

II. ACCEPTORS WITH TWO SYMBOLS AND ONE MEMBRANE

In this section we consider SA acceptors which are restrictedto two symbols and one membrane. Previous results in [1]show that all finite sets of natural numbers can be acceptedby this type of restricted SA system. These results, howevercan be improved.

Theorem 1: NFIN ( a(1)NO2P1.Proof: The result NFIN ⊆ a(1)NO2P1 was shown

in [1]. To see that NFIN is a proper subset, we show thatsome non-finite set of natural numbers can be accepted by aSA systems with two objects and one membrane. Considerthe set L = {2n|n ≥ 0}. The following SA system of typea(1)NO2P1 accepts L and hence proves that the inclusion isstrict.

Π = (Σ, µ, w1, R1, io)

whereΣ = {o, t},µ = [1]1,w1 = λ,R1 = {(oo, out; o, in), (o, out; t, in), (tt, out; tt, in)},io = 1.

Informally, this machine has the input oi in the skin mem-brane initially. During each step, the input is reduced by half. Ifthere is an odd number of o’s, at least one t will be drawn intothe membrane. Eventually, the number of o’s will be reducedto one. This will draw a single t into the membrane duringthe next step. If the computation ever draws in more than onet, the computation will never halt. An input is accepted if thenumber of o’s is always even (until the last step) and alwaysuses the first rule to apply to each pair of o’s. This will onlyoccur if the input given is in L.

Since L is not a semilinear set, the above proof also givesus the following result.

Corollary 1: a(1)NO2P1 6= semilinear sets.We can, however, show that all regular sets (and hence

all semilinear sets) can be accepted by SA systems with twoobjects and one membrane. This improves the above result.

Theorem 2: NREG ( a(1)NO2P1

Proof: From Corollary 1, we need only show thatNREG ⊆ a(1)NO2P1. We give a construction such thatgiven a regular set of natural numbers creates a SA systemwith two objects and one membrane accepting the same set.Any unary regular set M can be defined in terms of some sets

M0 and M1 such that M = M0 ∪{i+ jk|i ∈ M1, j ∈ N} forsome k. From M we create the following SA system.

Π = ({o, t}, [1]1, λ,R1, 1)

whereR1 = {(oi, out; t2, in)|i ∈ M0}∪

{(oi, out; t3, in)|i ∈ M1}∪{(okt3, out; t3, in)}∪{(t4, out; t4, in), (o, out; o, in)}

Informally, the resulting SA operates by using a trap symbolt to guarantee that no wrong path of the computation is taken.This is done by capping the number of t symbols to three ina correct computation. If four or more t symbols are broughtinto the membrane, the rule (t4, out; t4, in) will guarantee thatthe computation will never halt. The rule (o, out; o, in) is usedto make sure the computation never halts if all the o’s are notused in other rules (i.e. the input was not in accepted by M).

The computation works by first choosing to either checkthat the o’s make up an element in M0 or they make up anelement in {i + jk|i ∈ M1, j ∈ N}. This is done by usingone of the first two rules in the first step. (The remaining o’swill use the rule (o, out; o, in) to remain unchanged. Also, itis important to note that if more than one instance of one ofthe first two rules is applied, at least four t symbols will bebrought into the system.) If the second rule type was applied,the computation now is able to remove ok in each prior stepuntil the number of remaining o’s is less than k. If the inputis accepted, the computation will reach a step where there areno more o’s in the membrane and less than four t’s resultingin no applicable rules.

III. ACCEPTORS WITH ONE SYMBOL AND THREEMEMBRANES

Very little so far is known about the power of SA systemswith only one symbol. Symport / antiport generators are knownto be able to generate at least regular sets if they are allowedat least two membranes [1], but what about acceptors?

Theorem 3: a(1)NO1P3 contains nonsemilinear sets.Proof: The following SA system accepts the nonsemi-

linear set L = {2n|n ≥ 0}.

Π = (Σ, µ, w1, w2, w3, R1, R2, R3, io)

whereΣ = {o},µ = [1[2[3]3]2]1,w1, w2, w3 = λ,R1 = {(oo, out; o, in)},R2 = {(o, in)},R3 = {(oo, out), (oo, in)},io = 1.

This system works by dividing the number of o’s in mem-brane 1 in half until only a single o is left. If the input wasof the form o2n

, each step will leave an even number of o’sin membrane 1 until the last step which will draw the final o

into membrane 2 and the computation will halt. If the input

Page 85: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

77

was not of the form o2n

, some step will have an odd numberof o’s (> 1) in membrane 1. Since the computation must workin a maximally parallel manner, at least one o will be drawninto membrane 2 before the final step. If this occurs, at leasttwo o’s will be located in membrane 2 after no o’s remain inmembrane 1. These o’s will travel between membrane 2 andmembrane 3 forever causing an infinite loop. (This loop willalso occur if the rule in membrane 1 is not exhausted beforethe rule in membrane 2 is applied. This type of computationsignifies a wrong guess in the nondeterministic branching.)

IV. ACCEPTORS WITH ONE SYMBOL AND MULTIPLEMEMBRANES

In the previous section, we saw that SA acceptors witha single symbol can accept nonsemilinear sets. So a natu-ral question is raised. What is the computing power of amulti-membrane acceptor which uses only a single symbol?Although it is still open whether such systems are universal,we can show that they are more powerful than partially blindmulti-counter machines.

A partially blind (multi-)counter machine (PBCM) [3] is arestricted type of counter machine which consists of a finitenumber (call the number m) of counters which can add oneand subtract one, but cannot test for zero. If there is an attemptto decrement a zero counter, the system aborts and does notaccept. The first k counters (for some k ≤ m) are inputcounters. The system is started with some nonnegative integers(n1, · · · , nk) in the input counters and the other counters setto zero. The input tuple is accepted if the system reaches ahalting state and all the counters are zero. Hence, the languageaccepted by a PBCM is the set of k-tuples of nonnegativeintegers accepted by the system.

Formally a PBCM is defined as M = (m,B, l0, lh, R)where m is the number of partially blind counters in thesystem, B is the set of instruction labels, l0 is the startinginstruction, lh is the halting instruction, and R is the set ofinstructions. The instructions in R are of the form

• li : (ADD(r), lj)• li : (SUB(r), lj)• li : HALT

where li and lj are instruction labels and r is the counter thatshould be added / subtracted.

For notational convenience, we will denote the family ofsets of tuples of natural numbers accepted by some PBCM asPBLIND and the family of sets of tuples of natural numbersaccepted by PBCMs with m counters as m − PBLIND.

A related model called blind (multi)counter machine [3] is a(multi)counter machine that can add one and subtract one froma counter, but cannot test a counter for zero. The differencebetween this model and a partially blind counter machine isthat a blind counter machine does not abort when a zerocounter is decremented. Thus, the counter stores a negativenumber. Again, an input is accepted if the computation reachesan accept state and all the counters are zero.

We note that a blind counter machine is equivalent in powerto reversal bounded counter machines [3] which are equivalentto semilinear sets [6]. Partially blind counter machines arestrictly more powerful than blind counter machines [3].

The next result is an improvement of a result in [9] whereit was shown that a partially blind m-counter machine canbe simulated by a SA system with two objects and 3(m + 1)membranes. Our construction is a rather intricate modificationof the construction in [9].

Theorem 4: Any partially blind counter machine with m

counters M can be simulated by some SA system with 5m+3membranes Π.

Proof: Let M = (m,B, lo, lh, R) where M is a partiallyblind counter machine with m counters. Assume that the startinstruction (lo) is labeled l1 and each additional instructionis labeled sequentially as l2, l3, · · · , l|R|. Also assume the lastlabeled instruction, l|R| is the HALT instruction (lh) and noother HALT instructions exist.

The instructions of M are encoded with distinct numbers.These numbers have useful properties much like the encodingin the construction of [9]. In [9], the main property of theencoding guarantees that for a set of encoded numbers, eachelement of the set is distinct. In other words, given an encodednumber oi, there exists no set of additionally encoded numberssuch that oj1 + · · · + ojn = oi (where the oj’s do not needto be distinct, but are not equal to oi). In our construction,we use this idea and extend it so that we can encode two setsof numbers (call them set A and set B) such that given twoencoded numbers oi ∈ A and oj ∈ B, the encoding is distinct.This means that there does not exist a set of additionallyencoded numbers such that ok1 + · · · + okn = oi + oj (wherethe ok’s do not need to be distinct, but are not equal to eitheroi or oj). This codification is done as follows:For each element in the set B ∪ R we associate a distinctnatural number denoted by αi from the set {1, 2, · · · , n} where|B ∪ R| = n. This association is created as follows.

1) li = α2i−1 = 2i − 1 (the label associated with someinstruction)

2) li : (ADD(r), lj) = α2i = 2i (an addition instructionitself)

3) li : (SUB(r), lj) = α2i = 2i (a subtraction instructionitself)

For each element in the set {Hi, Hi′ |1 ≤ i ≤ m} we alsoassociate a distinct natural number denoted by αHi

and αHi′

from the set {(n + 1), · · · , (n + 2m))}. This association iscreated as follows.

1) Hi = αHi= (2i − 1) + n

2) Hi′ = αHi′= 2i + n

These natural numbers must be encoded to make their rulesin Π distinct. This encoding is done with the function v(αi) =12mn′ + 12mi where n′ = n + 2m + 1.

We also create elements{βjADD, βjSUB , βjREMOV E , βjCHECK} for 1 ≤ j ≤ m.For each of these elements we also associate a distinctnumber such that:

1) v(βjADD) = 24mn′−4(j−1)−1 (used to add a numberto counter j)

2) v(βjREMOV E) = 24mn′ − 4(j − 1) − 2 (signifies theinstruction is completed)

3) v(βjSUB) = 24mn′ − 4(j − 1) − 3 (used to subtract anumber from counter j)

Page 86: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

78

4) v(βjCHECK) = 24mn′ − 4(j − 1) − 4 (used to makesure the counters halted in the appropriate configuration)

These numbers are used to determine the multiplicity of thecorresponding multiset of o’s associated with the instruction.Some important properties of these numbers follow:

• Each v(αi) is strictly greater than half of any other v(αj).• Each v(βi) is a distinct value between 24mn′−(24m)/2

and 24mn′.• Each v(βi) is strictly greater than half of any other v(βj).• The addition of any v(αi) with some v(βj) is distinct

and can not be created using any other combination ofv(αi′)’s and v(βj′)’s. (This is due to the fact that everyv(βj′) is larger than any v(αi′). It is also due to the factthat every v(αi′) is a multiple of m and every v(βj′) isnot a multiple of m.)

Using the defined encoding of the instructions, we nowcreate a SA system Π to simulate M with 5m+3 membranes.For ease of understanding we will label these membranes withthe labels

{s, ci1, ci2, ci3, ts1, ts2, ti1, ti2|1 ≤ i ≤ m}.

We use s to denote the skin membrane which controls theexecution of each instruction, ci1, ci2, and ci3 to denotemembranes used to store the count of the counter i, and thelabels ts1, ts2, ti1, and ti2 to denote membranes that are usedto ‘trap’ incorrect moves and force an infinite looping of rules.Formally, we define the system as follows.

Π = (Σ, µ, w1, · · · , w5m+3, R1, · · · , R5m+3, io)

whereΣ = {o},µ = [s[ts1

[ts2]ts2

]ts1[c11

[c12[c13

]c13]c12

[t11 [t12 ]t12 ]t11 ]c11· · ·

[cm1[cm2

[cm3]cm3

]cm2[tm1

[tm2]tm2

]tm1]cm1

]s,ws = ov(α1),wci1

= λ for 1 ≤ i ≤ m,wci2

= ov(βiREMOV E) for 1 ≤ i ≤ m,wci3

= ov(βiSUB) for 1 ≤ i ≤ m,wts1

, wts2, wti1

, wti2= λ for 1 ≤ i ≤ m.

The rules are created as follows:

For each instruction of the form li = (ADD(r), lj):1) Add the following rules to membrane s:

a) (ov(α2i−1), out; ov(α2i)ov(βrADD), in)b) (ov(α2i), out; ov(α2j−1), in)

2) Add the following rules to membrane cr1:a) (ov(α2i)ov(βrADD), in)b) (ov(α2i), out)

For each instruction of the form li = (SUB(r), lj):3) Add the following rules to membrane s:

a) (ov(α2i−1), out; ov(α2i)ov(βrSUB), in)b) (ov(α2i), out; ov(α2j−1), in)

4) Add the following rules to membrane cr1:a) (ov(α2i)ov(βrSUB), in)b) (ov(α2i), out)

For the instruction of the form li = HALT :

5) Add the following rules to membrane s:a) (ov(α2i−1), out; ov(αH1

), in)b) (ov(αHi

), out; ov(αHi′

)ov(βiCHECK), in) for 1 ≤

i ≤ m

c) (ov(αHi′

), out; ov(αHi+1

), in) for 1 ≤ i < m

d) (ov(αHm′

), out)

6) Add the following rules to membrane cr1:a) (ov(αH

r′)ov(βrCHECK), in)

b) (ov(αHr′

), out)

The following additional rules must be added to the system.7) In membrane s, for each counter r where 1 ≤ r ≤ m

add the rule:a) (ov(βrREMOV E), out)

8) Also add the following rules to membrane cr1 for 1 ≤r ≤ m:

a) (ov(βrREMOV E), out)

9) Also add the following rules to membrane cr2 for 1 ≤r ≤ m:

a) (ov(βrREMOV E), out; ov(βrADD), in)b) (ov(βrREMOV E), out; ov(βrSUB), in)c) (ov(βrREMOV E), out; o(v(βrCHECK), in)

10) Also add the following rule to membrane cr3 for 1 ≤r ≤ m:

a) (ov(βrSUB), out, ov(βrSUB), in)

11) Also add the following rule to membranes ts1 and tr1for 1 ≤ r ≤ m:

a) (o, in)

12) Also add the following rule to membranes ts2 and tr2for 1 ≤ r ≤ m:

a) (o, in)b) (o, out)

The basic idea is that due to the manner in which thenumbers αi and βj are encoded, they can be added toeach other and are still distinctly distinguished. Since theconstruction never has more than a single αi and a single βj

in any membrane during the same step, the multiset of o’s canonly be broken up as αi and βj without leaving remaining o’sto be drawn into the trap membranes. If the wrong rule set ispicked, at least one extra o will remain and the trap membraneswill draw in the o causing an infinite looping of rules to occur.Informally, the process of Π occurs as a 2-part system. The setof α’s control the sequence of instructions which are executedand the set of β’s control the actual processing of incrementand decrement instructions.

An ADD(r) instruction begins with the encoded multiplic-ity for the instruction label within membrane s which brings inboth the multiplicity of o associated with the instruction itselfalong with ov(βrADD) corresponding to the counter r (usingrule 1a). Both encoded instructions (all of the o’s in membranes) are then drawn into the membrane cr1 with rule 2a wherethe encoded βrADD instruction is used to add a single o tothe membrane cr2 leaving v(βrREMOV E) in membrane cr1

(rule 10a) while the encoded α instruction is thrown backout to membrane s. To complete the addition process, theencoded α is thrown out of the system while the encoded

Page 87: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

79

next instruction label is drawn into s (rule 1b). Simultaneously,ov(βrREMOV E) is thrown out of cr1 and then out of s (rules9a and 8a respectively).

A SUB(r) instruction operates almost identically to that ofthe ADD(r) instruction except that the encoded multiplicityof βjADD is replaced with the encoded multiplicity βjSUB .

If the wrong maximal multiset of rules is ever chosenin a given step, some number of o’s will not be used ininstruction/implementation steps (due to the fact that no v(α)+v(β) can be evenly broken up into any other set of v(α)’sand v(β)’s). These additional o’s will be drawn into a trapmembrane using rule 11a (ts1 or tr1 for 1 ≤ r ≤ m). Once ano is within the trap state, the computation will never halt sincethe o will constantly pass between the outer trap membraneand the inner trap membrane using rules 13a and 13b.

Handling the case when a subtract instruction is attemptedfrom a zero counter operates in a slightly convoluted manner.The subtract instruction itself is allowed to process, but thesystem ’blocks’ (i.e. enters a state where an infinite loop of ap-plicable instructions is guaranteed) when the next instruction isprocessed. (Since, HALT is processed as if it is an instruction,we are guaranteed to have an additional instruction followinga ‘subtract from zero’ instruction.) When a subtract from zerooccurs, the contents of ci2 will be left with just ov(βiSUB). Allinstructions require that ov(βiREMOV E) be removed from ci2

(rules 10a and 10b) in order to process. Since ov(βiREMOV E)

is ov(βiSUB) + 1, this rule is not applicable and the extra o’sin ci1 must be drawn into membrane ti1 where they will beshuttled between ti1 and ti2 forever.

To check that all of the counters end containing a countof zero, the encoding of the set {Hi|1 ≤ i ≤ m} isused to stall the computation one step by bringing in theappropriate encoding of the set {Hi′ |1 ≤ i ≤ m} (usingrule 5a) which is used to bring in each v(βjCHECK) afterv(β(j−1)CHECK) has been processed using rules 5b and 5c.These two encoded symbols move into the appropriate ci1 (rule6a) where v(βjCHECK) is exchanged with v(βjREMOV E)in ci2 (rule 7a). If the current counter had a value > 0before this exchange took place, the final count will contain|o| ≥ v(βjSUB) and rule 11a will guarantee that the systemwill never halt. If the current counter ended with a count ofzero, rule 11a will never be applicable and the rules withinmembranes ci1, ci2, and ci3 will have completed processing.

Nondeterminism in this construction is essential. Clearly asymport / antiport system with one symbol must operate non-deterministically if more than one rule of either type (u, in)or (u, out) occurs in any membrane. To have a deterministicsystem would require most of the rules to be antiport rulesand a rather tricky construction. In the above construction,each step often has many possible applicable rules, but onlyone set of rules which use all of the objects in the membrane.If not all the objects are used in a ‘valid’ rule, the remainingobjects are trapped. Nondeterminism is used to pick the ruleset which uses all of the current o objects without using a traprule.

This result can be used to also give an upper bound onthe number of membranes needed for a single object SAsystem to simulate any regular set. It is easy to see that a

1-PBCM can accept any regular set by initially starting withthe input in the counter and decrementing it and simulating thefinite automaton (FA) accepting the regular set. The 1-PBCMaccepts (guessing that the counter is zero) if the FA accepts.Since Theorem 4 gives a construction to simulate an m-PBCMwith 5m+3 membranes, we can simulate a 1-PBCM with an8 membrane SA system with only one symbol. (Again theinclusion is strict due to Theorem 3.)

Corollary 2: NREG ( a(1)NO1P8

We will show that, in fact, 1-object multi-membrane SAacceptors are more powerful than partially blind countermachines. Consider a SA acceptor P with only one object o

and r membranes m1, ...,mr. Without loss of generality (byrelabeling the membranes), assume that the first k membranesm1, ...,mk are the input membranes. There are fixed multisetsos1 , ...., osr such that at the start of the computation, the inputmembranes are given os1+n1 , ..., osk+nk for some nonnegativeintegers n1, ..., nk and the other membranes are given osj forj = k + 1, ..., r. If the system halts, then we say that the k-tuple (n1, ..., nk) is accepted. The set of all such k-tuples isthe set accepted by P . Then the following corollary followsfrom Theorem 4.

Corollary 3: If L ⊆ Nk is accepted by a partially blindcounter machine with m ≥ k counters (note that the first k

counters are input counters), then L can be accepted by a 1-object, (5m + 3)-membrane SA acceptor.

Before proceeding further, we need the definition of a vectoraddition system. An n-dimensional vector addition system(VAS) is a pair G = 〈x,W 〉, where x ∈ Nn is called thestart point (or start vector) and W is a finite set of vectors inZn, where Z is the set of all integers (positive, negative, zero).The reachability set of the VAS 〈x,W 〉 is the set R(G) = {z |for some j, z = x+v1+...+vj , where, for all 1 ≤ i ≤ j, eachvi ∈ W and x + v1 + ... + vi ≥ 0}. An n-dimensional vectoraddition system with states (VASS) is a VAS 〈x,W 〉 togetherwith a finite set T of transitions of the form p → (q, v), wherep and q are states and v is in W . The meaning is that such atransition can be applied at point y in state p and yields thepoint y + v in state q, provided that y + v ≥ 0. The VASSis specified by G = 〈x,W, T, p0〉, where p0 is the startingstate. It is known that n-dimensional VASS can be effectivelysimulated by (n + 3)-dimensional VAS [5]. The reachabilityproblem for a VAS (VASS) G is to determine, given a vector y,whether y is in R(G). It is known that the reachability problemfor VASS (and hence also for VAS) is decidable [7]. It is alsoknown that VAS, VASS, and Petri net are all equivalent.

Corollary 4: Let G be a k-dimensional vector addition sys-tem with states (VASS), and R(G) ⊆ Nk be the reachabilityset of G. Then R(G) can be accepted by a 1-object multi-membrane SA acceptor.

Proof: Let G = 〈x,W, T, p0〉 be a VASS. We need onlyshow that R(G) can be accepted by a partially blind countermachine M. The construction is straightforward. M has 2kcounters, where the first k counters are the input counters.Given input y = (n1, ..., nk) in the first k counters and zeroin the last k counters, M first stores the k-tuple x in the lastk counters. Then M simulates the computation of G (i.e.,applies the vectors in W ) on the last k counters. At some

Page 88: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

80

point nondeterministically chosen, M guesses that the k-tuplew in the last k counters is equal to the k-tuple y in the inputcounters. Then, for each i, M decrements counter i and n+ i

by 1 simultaneously a nondeterministic number of times instate qi after which M jumps to state qi+1. After processingall the counters, M enters an accepting state.

We can now show that 1-object multi-membrane SA accep-tors are more powerful than partially blind counter machines.

Theorem 5: 1-object multi-membrane SA acceptors aremore powerful than partially blind counter machines.

Proof: From Theorems 3 and 4, we need only show thatL = {2n | n ≥ 0} cannot be accepted by a partially blindcounter machine.

The idea is the following. Given a partially blind countermachine M with k+1 counters with the first counter being theinput counter, accepting L(M) ⊆ N , we construct a (k + 3)-dimensional VASS G = 〈x,W, T, p0〉 (for some k), such thatR(G) ∩ (N × {0}k+2) = {(n, 0, ..., 0) | n ∈ L(M)}. LetL(G) be the projection of R(G) ∩ (N × {0}k+2) on the firstcoordinate. Then from the results in [4], L(G) is semilinear.Hence, L(M) is also semilinear (since L(G) = L(M)).

We now describe the construction of G from M. Startingwith x = (0, 1, 0, ..., 0), G increments coordinates 1 and 3 by 1simultaneously a nondeterministic number of times, say, n. Atthis point, the coordinates will have values (n, 1, n, 0, ..., 0).Then G simulates the computation of M on the last k + 1coordinates (n, 0, ..., 0) until M enters an accepting state,guessing that its k + 1 counters are zero. G then decrementsthe second coordinate by 1.

Clearly, the projection of R(G)∩ (N ×{0}k+2) on the firstcoordinate is L(M), and the result follows.

V. GENERATORS WITH ONE SYMBOL AND MULTIPLEMEMBRANES

We have defined a PBCM as an acceptor of k-tuples ofnonnegative integers. One can also define a partially blindcounter machine that is used as a generator of k-tuples of non-negative integers. A partially blind counter generator(PBCG)M consists of m counters, where the first k ≤ m countersare distinguished as the output counters. M starts with allcounters set to zero. Again, at each step, each counter canbe incremented/decremented by 1 (or left unchanged), but ifthere is an attempt to decrement a zero counter, the systemaborts and does not generate anything. If the system halts ina final state with zero in counters k + 1, ..., m, then the tuple(n1, ..., nk) in the first k counters is said to be generated byM.

The following theorem shows that PBCMs and PBCGs areequivalent.

Theorem 6: Let k ≥ 1 and L ⊆ Nk.1) If M is a PBCG with m counters generating L, then

we can construct a PBCM M′ with m + k countersaccepting L.

2) If M is a PBCM with m counters accepting L, thenwe can construct a PBCG M′ with m + k countersgenerating L.

Proof: Part 1: With input (n1, ..., nk) on its first k

counters, M′ simulates M on the remaining m counters.

When M enters a final state, then for each i, M′ decrementscounter i and k + i by 1 simultaneously a nondeterministicnumber of times in state qi after which M′ jumps to stateqi+1. After processing all the counters, M′ enters an acceptingstate.Part 2: M′ first nondeterministically generates a 2k-tuple(n1, n2, ..., nk, n1, n2, ..., nk) in the first two-counters. ThenM′ simulates M on the last m counters and halts in a finalstate if M accepts.

Now consider a 1-object r-membrane SA generator P . Thesystem has only one object o and r membranes m1, ...,mr,where the first k ≤ r membranes m1, ...,mk are outputmembranes. There are fixed multisets os1 , ...., osr such thatat the start of the computation, each membrane mj is set toosj for 1 ≤ j ≤ m. If the system halts with os1+n1 , ..., osk+nk

in membranes m1, ...,mk, then we say that the k-tuple(n1, ..., nk) is generated. The set of all such k-tuples is the setgenerated by P . Then, as with the 1-object multi-membraneacceptors, we can show the following:

Theorem 7: Let L ⊆ Nk.1) If L is generated by a PBCG with m ≥ k counters, then

L can be generated by a 1-object (5m + 3)-membraneSA generator.

2) If L is the reachability set of a VASS, then L can begenerated by a PBCG and, hence, also by a 1-objectmulti-membrane SA generator.

Proof: Part 1 can be proved by a simple modification tothe proof of Theorem 4. The definition of a PBCM acceptorspecifies the counters must contain zero after the computationhalts for a given input to be accepted. The definition of aPBCM generator requires only that the non-output counters bezero after halting. Therefore, the simulation of the instructionHALT must be changed in order to simulate a generator ratherthan an acceptor. The basic idea of the simulation is to re-encode the HALT instruction by removing the instructionswhich test that the output counters end with a count of zero.The membrane cr3 and the rule 10a for each r where 1 ≤r ≤ k must be removed so that a positive counter value doesnot cause the system to get into an infinitely loop. (Note thatthis infinite loop is necessary in the case of an acceptor, sinceall the counters must end with zero for the input tuple to beaccepted.)

Also, since an additional instruction is needed to guaranteethat a subtract from zero instruction was not executed dur-ing the last steps, the halt instruction simulates adding andimmediately subtracting one from each output counter. (Thisrequires a change to the encoding to account for 2k moreinstructions. We omit the details.) Part 2 follows from Part 1and Theorem 6.

It is easy to see that a 1-PBCG can generate any regularset by incrementing the counter and simulating the statetransitions of the finite automaton (FA) accepting this regularset. If the FA accepts, the 1-PBCM enters the final state. Thus,from Theorem 7, we have the following corollary, which hasalready been shown in [1] to be true, even for systems withonly two membranes.

Corollary 5: NREG ⊆ g(1)NO1P8

It is open whether the inclusion above is proper (even if

Page 89: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

81

we allow the 1-object SA generator to have any number ofmembranes).

VI. CONCLUSIONS

Table I shows what is currently known about “small” SAsystems. These results illustrate the boundary between univer-sality and non-universality of SA systems with minimal objectsand membranes. Whether or not 1-symbol multi-membrane SAacceptors/generators are universal remains an interesting openproblem.

O → 1 2 3 4 5P ↓

1 g(1)NO1P1 ≡ NFIN [1] NREG ⊆ g(1)NO2P1 [1] 1-CM [1] 2-CM [1] TM [1]NREG ⊂ a(1)NO2P1 [h]

∀k ∈ N(L = {ki|i ∈ N}) ∈ a(1)NO1P1 [1] L = {2n} ∈ a(1)NO2P1 [h]2 NREG ⊆ g(1)NO1P2 [1] 1-CM [1] 2-CM [1] TM [1]3 2-CM [1] TM [1]

L = {2n} ∈ a(1)NO1P3 [h]4 TM [1]5m+3 m-PBCM [h]

m-PBCG [h]* TM? (open)

TABLE ICURRENTLY KNOWN RESULTS

In table I, the reference [h] means that the result was provedhere in this paper. The abbreviation k-CM refers to a standardcounter machine with k counters. The abbreviation TM refersto a standard Turing Machine. The cells with the designationk-CM or TM mean that the associated SA system is equivalentto the system within the cell.

ACKNOWLEDGMENT

We would like to thank Rudi Freund and Hsu-Chun Yen fortheir comments and suggestions. We also thank the refereesfor their comments/suggentions that improve the presentationof our results. Our research was supported in part by NSFGrants CCR-0208595 and CCF-0430945.

REFERENCES

[1] A. Alhazov, R. Freund, and M. Oswald. Symbol / Membrane Complexityof P Systems with Symport / Antiport Rules Pre-Proceedings of the 6thInternational Workshop on Membrane Computing, WMC6, 123-146, June2005.

[2] S. Ginsburg. The Mathematical Theory of Context-Free Languages. NewYork: McGraw-Hill, 1966.

[3] S. Greibach. Remarks on blind and partially blind one-way multicountermachines. Theor. Comput. Sci. 7: 311-324, 1978.

[4] D. Hauschildt and M. Jantzen. Petri net algorithms in the theory of matrixgrammars. Acta Inf., 31(8): 719–728, 1994.

[5] J. Hopcroft and J. J. Pansiot. On the reachability problem for 5-dimensional vector addition systems. Theor. Comput. Sci., 8(2):135–159,1979.

[6] O. H. Ibarra, S. Woodworth, H. Yen, and Z. Dang. On symport/antiportsystems and semilinear sets. Pre-Proceedings of the 6th InternationalWorkshop on Membrane Computing, WMC6, 312-335, June 2005.

[7] E. Mayr. An algorithm for the general Petri net reachability problem,SIAM J. Computing, 13(3):441–460, 1984.

[8] Gh. Paun. Membrane Computing: An Introduction. Springer, 2002[9] Gh. Paun, J. Pazos, M. J. Perez-Jimenez, and A. Rodrıguez-Paton.

Symport/antiport P systems with three objects are universal. FundamentaInformaticae, 64 (1-4): 353-367, 2005.

Page 90: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

82

Page 91: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

Investigating Local Evolutions in DynamicalProbabilistic P Systems

Dario PesciniDISCo, Universita di Milano-Bicocca

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

Daniela BesozziDICo, Universita di Milano

Via Comelico 39, 20135 Milano, [email protected]

Giancarlo MauriDISCo, Universita di Milano-Bicocca

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

Abstract— We present a simulation tool to predict the behaviorof single regions in dynamical probabilistic P systems withreduced size, that is, membrane systems with probability valuesassociated to rules that dynamically change during the evolution,where the number of objects whose evolution is analyzed is notgreater than 2. The tool is based on the construction of a gridover the phase space of a region, which is then used to evaluatethe mean displacement of each multiset in the grid and to buildthe vector field of that region. As a consequence, we can predictthe local evolutions (i.e., the behavior of the system inside eachmembrane) for all possible choices of initial multisets. We showsome applications of this method to investigate the dynamics oftwo simple abstract toy-systems and of the Lotka-Volterra model.

I. INTRODUCTION

P systems were initially introduced in [7] as a class ofdistributed parallel computing devices, inspired by the struc-ture and the functioning of living cells, and lately devel-oped as a powerful framework for modelling and for severalapplications in various disciplines (see, e.g., [2]). In thefollowing, we assume that the reader is familiar with thebasic notions and the terminology underlying P systems; werefer, for details, to [8] and to the P systems Web Pagehttp://psystems.disco.unimib.it/ for an updatebibliography.

Dynamical probabilistic P systems (DPPs, in short) wereintroduced in [6] as discrete, parallel and stochastic modelsaimed at the investigation of the evolution behavior of complexsystems, such as biological, chemical, ecological systems, andso on. In these systems, a probability value is associated toeach rule by means of a specific probability function, and thisvalue changes during the evolution of the P system accordingto the current state of the membrane where that rule is applied.Moreover, a constant is associated to each rule, thus assigninga “weight” that will determine - together with the nature ofthe current multiset - the stochastic applicability of the rule.

It is well known that for a great variety of chemical andphysical systems there exist well established theories andtools - essentially based on the deterministic description ofthe systems - to analyze their behavior. On the contrary, forstochastic discrete systems there is a general lacking of usefultools aimed at the same purpose. Usually, to investigate thedynamic of a DPP, one starts from one fixed set of initial con-ditions (consisting of the initial multisets, the rule constants,and so on) and let the system evolve. This process can thenbe repeated for any other choice of initial conditions whichseem to be plausible and interesting for analyzing the system’sbehavior. Moreover, since DPPs are stochastic systems, itis even harder to partition the phase space in homogeneoussubspaces, that is, to find out areas which exhibits the samebehavior. To avoid these drawbacks, in this paper we proposethe use of a tool aimed at the quick prediction of local (i.e.,with respect to one membrane at a time) behavior in a DPPby evaluating single step evolutions for many initial multisetsat the same time, thus resulting in an obvious saving of thecomputational costs. The tool is based on the constructionof a grid, corresponding to a set of initial multisets for thesystem, which is then used to define a vector field over thephase space of any single membrane in the system. This vectorfield represents the 1-step multiset evolutions for all pointsbelonging to the grid, and allows to characterize the stochasticnature of the system, its peculiar dynamical points (stochastic,stable or unstable points) and to hypothesize the local behaviorof any membrane (quasi-periodic or periodic orbits).

The proposed tool is here applied for systems with a“reduced dimension” only, that is, systems where the dynamicis restricted to (at most) two types of objects, while themultiplicities of all other objects possibly appearing in thesystem remain constant during the evolution. The reason whywe consider this class of DPPs is due to the complexityof representing the dynamical behavior of systems with ahigher dimension: indeed, if the number of objects whose

Page 92: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

84

evolution we are interested in is equal or greater than four,then it is challenging to give a graphical and comprehensiblepicture of the phase space of any membrane with respectto all variables of interest. In such a case, one should givereduced representations in 2 or 3 dimensions of the phasespace by cutting it at some chosen hyperplane, thus setting afixed value for those variables that are not represented in thereduced phase space. Anyway, a process of this type wouldweaken the potentiality of the tool, as it forces to make alsoa reduction on the constructed vector field, therefore on thetotal and complete set of initial multisets for all variables.If the number of analyzed objects is equal to three, then noproblems of cutting subsist and it is possible to construct thevector field over the whole phase space in 3 dimensions; inthis case, however, it is still not immediate to represent thedynamics in a clear way. The development of the tool forDPPs with three symbols of interest will be carried out in anear future.

The paper is structured as follows. In Section II we recall thebasic definitions of DPPs and in Section III we describe how toconstruct the vector field over the phase space, as well as howto recover useful information from it. In Section IV we applythe tool to two abstract toy-systems and to the Lotka-Volterramodel. We conclude with some final remarks and suggestionsfor further research investigations in this direction.

II. DYNAMICAL PROBABILISTIC P SYSTEMS

In this section we recall only the definitions about dynamicalprobabilistic P systems that will be relevant in the comprehen-sion of the following sections. The reader is referred to [5]for details and a widening about this variant of P systems. Adynamical probabilistic P system (DPP, in short) is, basically,a system where the probabilities associated to the rules varyduring the evolution. Formally, a DPP of degree n is aconstruct Π = (V,O, µ,M0, . . . ,Mn−1, R0, . . . , Rn−1, E, I)where:

• V is an alphabet, O ⊆ V is the set of analyzed symbols;• µ is a membrane structure consisting of n membranes

labelled with the numbers 0, . . . , n − 1 (the label 0corresponds to the skin membrane);

• Mi, i = 0, . . . , n − 1, is the multiset over V initiallypresent inside membrane i;

• Ri, i = 0, . . . , n − 1, is a finite set of evolution rulesassociated with membrane i. An evolution rule is of theform r : u

k−→ v, where u is a multiset over V , v is a

string over V × ({here, out} ∪ {inj | 1 ≤ j ≤ n − 1})(the target here will often be omitted) and k ∈ R

+ is aconstant associated to the rule;

• E = {VE ,ME , RE} is called the environment, it consistsof an alphabet VE ⊆ V , a feeding multiset ME over VE

and a finite set of feeding rules RE of the type r : u →(v, in0), for u, v multisets over VE ;

• I ⊆ {0, . . . , n − 1} ∪ {∞} is the set of labels ofthe analyzed regions (the label ∞ corresponds to theenvironment).

The alphabet O and the set I specify which symbols andregions are of peculiar importance in Π, namely those elements

whose evolution will be considered during the analysis and thesimulation of the system, and will be of particular interest inSection III. The set of parameters P of a DPP Π consistsof the multiplicities of all symbols appearing in the initialmultisets M0, . . . ,Mn−1,ME , and the constants of all rulesin R0, . . . , Rn−1. The alphabets V,O, VE , the membranestructure µ, the form of the rules in R0, . . . , Rn−1, RE andthe set I of analyzed regions (all of which do not belong tothe set of parameters of Π) are called the main structure ofΠ. A family F of DPPs can then be defined by allowing theparameters to change from member to member, while keepingthe main structure equal for all its members. This is usefulwhen one wants to analyze, e.g., the same DPP with somedifferent elements in the set of parameters, such as differentinitial multisets, different rule constants or different feedingmultisets.

A DPP works as follows. A fixed initial configuration of Πdepends on the choice of P , hence it consists of the multisetsinitially present inside the membrane structure, the chosen ruleconstants and the feeding multiset, which is given as an inputto the skin membrane from the environment at each step of theevolution by applying the feeding rules. We assume that, aslong as the system evolves, the environment contains as manysymbols as they are needed to continuously feed the system.

At each step of the evolution, all applicable rules aresimultaneously applied (according to a universal clock) and alloccurrences of the left-hand sides of the rules are consumed,hence the parallelism is maximal at both levels of objectsand of rules. The applied rules are chosen according to theprobability values dynamically assigned to them, as explainedbelow; if some rules compete for objects and have the sameprobability values, then objects are nondeterministically as-signed to them.

The probability associated to each rule in any set Ri,i = 0, . . . , n − 1, is a function of the rule constant and ofthe current multiset Mi occurring in membrane i, and it isevaluated as follows. Let V = {a1, . . . , al}, r : u

k−→ v be a

rule in Ri with u = aα1

1 . . . aαss

, and alph(u) = {a1, . . . , as}be the set of symbols from V occurring in u. To obtain theactual normalized probability pi(r) of applying r with respectto all other rules that are applicable in membrane i at thesame step, we first need to evaluate the (non-normalized)pseudo-probability pi(r) of r, which depends on the constantassociated to r and on the left-hand side of r, namely:

pi(r) = k ·

s∏

h=1

Mi(ah)!

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

that is, pi(r) is dynamically defined according to the currentmultiset occurring inside membrane i: for each symbol ah

appearing in u, we choose αh copies of ah among all itsMi(ah) copies currently available in the membrane itself,that is, we consider all possible distinct combinations of thesymbols appearing in alph(u). Thus, pi(r) corresponds to theprobability of having a “collision” among interacting objectsspecified in u, which are considered undistinguishable.

If Ri = {r1, . . . , rm} is the set or all rules appearing inmembrane i, the normalized probability of any rule rj is then

Page 93: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

85

evaluated aspi(rj) =

pi(rj)∑

m

j=1 pi(rj). (2)

In order to clarify the evaluation of the pseudo-probabilitiesand of the normalized probabilities, let us consider the ruler : X2Y

k−→ Z, with k = 2.5 · 10−1, and the multiset

M ={X5, Y 3

}. In this case, the definition given in (1) counts

all the possible heterogeneous terns of type XXY occurringin the multiset. In a combinatorial set up this corresponds tocount the number of possible homogenous couples of typeXX in M , and then multiply this number by the numberof Y appearing in M : 1

2 · (M(X) · (M(X) − 1)) · M(Y ) =12 · (5 · (5 − 1)) · 3 = 30. The last multiplicative factor in (1),given by the rule constant k, represents a way to describethe easiness to obtain these terns in each current multiset.The resulting pseudo-probability of r is thus p(r) = 7.5. Toobtain the probability needed to actually apply rule r amongthe other rules defined in the same membrane, this pseudo-probability has then to be normalized with respect to the sumof the pseudo-probabilities of all rules in the same membrane.

To realize the simulation of DPPs, a dedicated program writ-ten in C language has been developed for a single processorPC. In the simulations, the stochastic and parallel applicationof the rules is done by splitting each parallel step into severalsequential sub-steps. By exploiting the fact that the probabilitydistribution and the applicability of the rules are functions onlyof the left-hand side of the rules and their constants, eachsingle parallel step is separated into three stages: in the firstone, the probabilities of rules are evaluated; in the second one,a random number generator is used to choose the rule to beapplied and to correspondingly consume the objects appearingin its left-hand side; in the third one, the multisets are updatedusing a stored trace of the rules previously tossed. Each stagestarts only when the previous one has been applied to all themembranes in the DPP, and the same process is repeated forall subsequent evolution steps. A detailed description of theway the simulation algorithm works and of its complexity canbe found in [5].

The approach used in DPPs to evaluate the probabilitiesassociated to rules can be seen as an adaptation of the Gillespiealgorithm [3] to include and preserve an important feature of Psystems, namely the maximal parallelism of rule application.Nonetheless, to the aim of having the highest closeness tobiochemical reactions, other approaches could be investigatedand compared as well.

A. Defining the phase space of a DPP

Let V = {a1, . . . , al} be an (ordered) alphabet of a DPP,and M = {aα1

1 aα2

2 . . . aαl

l} an (ordered) multiset over V .

Since our aim is to keep trace of the system evolution andthus to give a natural representation of the multisets changingin time, we define a new structure consisting of a multisetparameterized by a natural number, which corresponds to atime step. That is, we call t-multiset the structure Mt ={aα1

1 , aα2

2 , . . . , aαl

l, t}, with t ∈ N (t /∈ V ).

We call position of a t-multiset Mt the vector −→M =

(α1, . . . , αl, t) in the space Nl+1, having as the first l coordi-

nates the multiplicities α1, . . . , αl of the symbols a1, . . . , al,appearing with the same disposition as in V to get the correctvectorial representation. By convention, in the following wewill denote the components of a generic position −→

Mi as the(l + 1)-tuple (αi,1, αi,2, . . . , αi,l, ti).

Since in Section IV we will only consider multisets insidethe same membrane, here we recall from [6] some usefuldefinitions given for two positions −→

Mi,−→Mj in N

l+1, occurringinside the same membrane of Π in distinct time steps. For adetailed discussion of a more general case the reader is referredto [5].

The displacement between −→Mi,

−→Mj is a function −→u :

Nl+1 × N

l+1 −→ Zl defined as

−→u (−→Mi,

−→Mj) = (αi,1 − αj,1, . . . , αi,l − αj,l). (3)

Note that the components of the displacement can be eitherpositive or negative values, and they tell how the system“moves”. In details, the displacement tells how the multiplic-ities in the positions −→

Mj differ from those in −→Mi.

The average velocity between two positions −→Mi,

−→Mj with

ti 6= tj is a function −→v : Nl+1 × Nl+1 −→ R

l defined as

−→v (−→Mi,

−→Mj) =

(αi,1 − αj,1

ti − tj, . . . ,

αi,l − αj,l

ti − tj

)

, (4)

it tells how fast the evolution from one state of the DPP tothe other is. When ti − tj = 1, which is the minimal timeincrement allowed in P systems, then the average velocity−→v (

−→Mi,

−→Mj) becomes the “instantaneous” velocity between

time steps tj and ti = tj + 1, that we denote by −→v (−→Mj).

Obviously, when −→Mi is the position evolved from −→

Mj inthe same membrane (as it is assumed in Section III), thenthe instantaneous velocity −→v (

−→Mj) gives the variation of that

multiset in a single time step.The phase space for a DPP of degree n is constructed as

the cartesian product of the phase spaces of all membranesin the DPP. Given the position −→

M = (α1, . . . , αl, t) of thet-multiset occurring inside membrane i at time t, and itsinstantaneous velocity −→v (

−→M) = (v1, . . . , vl) between t and

t + 1, the phase point of −→M at time t is the vector −→ϕ

t=

(α1, . . . , αl, v1, . . . , vl) ∈ Nl ×R

l. For any t ∈ N, the phasepoint −→ϕt represents the state of membrane i at that time. Theevolution of the multiset in membrane i can be described bythe phase curve, which is a function −→ϕ : N −→ N

l × Rl

such that −→ϕ (t) = −→ϕt. The space Φi ⊆ Nl × R

l is theset of all the points −→ϕt corresponding to an evolution ofthe multiset inside any membrane and it is called the phasespace of the membrane i, for all i = 0, . . . , n − 1; the spaceΦE ⊆ N

l × Rl is the phase space of the environment. The

space ΦΠ = Φ0 × . . .×Φn−1 ×ΦE ⊆ (Nl ×Rl)n+1 is called

the phase space of Π.The phase space ΦΠ of a DPP describes the evolution of the

whole system, with respect to both the change of all multisetsand the passing of time. Actually, in analyzing the behaviorof a given DPP, we will be interested in considering only thephase space restricted to the regions specified in the set I , andonly the evolution of symbols from O will be analyzed for themultisets inside those regions.

Page 94: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

86

III. THE VECTOR FIELD OVER THE PHASE SPACE

Let O be the set of analyzed symbols in regions belongingto the set I of a DPP Π. We assume that |O| = 2 and that oneor both following conditions hold: either (i) the multiplicitiesof symbols in V \ O are kept constant during all evolution,or (ii) there are no rules having in their left-hand sides bothsymbols from V \ O and from O (in other words, symbolsfrom O do not have any direct interaction with other symbolsnot belonging to O).

As already stated in [5], for any fixed region i ∈ I , the phasespace Φi (with respect to the evolution of symbols from O) canbe represented by means of some generalized coordinates. Thisis the case, e.g., of the Brussellator (or other chemical reactionmodels), where the phase space is usually described by theconcentration of the two reactants, or of 2-species predator-prey models, where the phase space can be described by thecardinality of the two populations (see [6], [5], [1] for someapplications of P systems to these models). In this section,we explain how to construct the vector field over the phasespace with this particular representation, where the generalizedcoordinates correspond to the multiplicities of the two symbolsfrom O. Namely, we represent the space Φi for the analyzedsymbols a, b ∈ O and we denote it as Φi

a,b. Hence, the abscissa

and ordinate axes in Φi

a,bcorrespond to the multiplicities α

and β of the symbols a and b, respectively.We associate to the space Φi

a,ba grid with an arbitrary-

chosen regular module of length g1 ad height g2, which wecall (g1, g2)-granular grid G, for some g1, g2 ∈ N. Any nodeg ∈ G, g = (α, β), correspond to the multiplicities α of a andβ of b, and is such that on the abscissa axis its predecessor andconsecutive nodes have coordinates (α − g1, β), (α + g1, β),respectively, while on the ordinate axis its predecessor andconsecutive nodes have coordinates (α, β − g2), (α, β + g2),respectively.

Each node g ∈ G is an initial multiset for the system Π,restricted to region i. Namely, it represents the multiplicitiesfrom which an evolution of Π can start in region i. Obviously,in the grid we can change all possible initial multiplicities ofa, b, but we keep fixed all other parameters (the rule constantsand the feeding multiset) of Π. Since an infinite number ofinitial multisets exist for any grid G, software implementationsare restricted to run over an arbitrary subgrid G of G.

For each node g ∈ G, we consider its 1-step evolution andwe repeat this process for a (initially fixed) number Z of times.Thus, we obtain Z displacements each one having node g astail and any other point g = (α, β) (not necessarily coincidingwith a node of G) in Φi

a,bas head. We denote each of these

displacements as −→u (g, gj), j = 1, . . . , Z (see thin arrows inFigure 1).

Given all Z displacements −→u (g, g1), . . . ,−→u (g, gZ) havingnode g as tail, we evaluate their mean displacement

〈−→ug〉 =

∑Z

j=1−→u (g, gj)

Z, (5)

and we represent it over the grid G as the 1-step evolvedmultiset from the initial multiset (α, β) (see bold arrow inFigure 1). Note that the length of 〈−→ug〉 is the mean value of

940

950

960

970

980

990

1000

1010

1020

920 940 960 980 1000 1020 1040 1060 1080

Fig. 1. Z=10 displacements (thin arrows) and respective mean displacement(bold arrow) for node g=(1000, 1000), in G=[920, 1080]× [940, 1020] with(g1, g2)=(20, 10).

the displacement between the multiset (α, β) in the tail of〈−→ug〉 and the (possibly real) value in the head of 〈−→ug〉. Wedenote the head of 〈−→ug〉 as the point (〈α〉, 〈β〉) (not necessarilycoinciding with a node) in the grid.

The mean displacements evaluated for all nodes in G con-stitute the vector field over the phase space (VFPS, in short),that we denote as V F (Φi

a,b), from which one can predict

the behavior of the multiset in the evolution of Π, insidemembrane i. Indeed, since VFPS exploits the mean value ofthe displacements, it allows to read out the behavior of thesystem with respect to the fixed region i and to the remainingfixed parameters, but for all possible initial multisets at thesame time in the chosen subgrid. Thanks to this fact, wecan recognize the stochastic nature of the system and alsocharacterize peculiar dynamical points, their respective neigh-borhoods and the whole behavior in the subgrid. Therefore,given any node g = (α, β) in G and its mean displacement〈−→ug〉, we can state the following.Stochastic points. If lim

Z→∞

〈−→ug〉 =−→0 and −→u (g, gj) 6=

−→0

for some j ∈ {1, . . . , Z}, then the system has a stochasticbehavior in g. The mean displacement in g is null due to thefact that, for all possible directions, the probability of havinga displacement in one direction is exactly the same as theprobability of having another displacement in the oppositedirection. In other words, starting from the initial multiset g

the system can evolve randomly in any direction.Equilibrium points. If lim

Z→∞

〈−→ug〉 =−→0 and −→u (g, gj) =

−→0

for all j ∈ {1, . . . , Z}, then the system has an equilibriumpoint in g. In this case, the fact that all possible displacementsare null means that the system cannot evolve (anymore) fromthat multiset, that is, the 1-step evolved multiset will be equalto the initial one either because there are no more applicablerules or because the applicable rules do not change the currentmultiset (e.g., consider rules of the form a → a). In orderto characterize the exact nature of this equilibrium point, weneed to look at one of its (arbitrary large) neighborhoods.Namely, if all displacements in the neighborhood tend towardsg and they all have g as head (or any other point close tog as head), that is, if the multiset g is the 1-step evolvedfor all possible initial multisets, then g is an attractor. Onthe contrary, if all displacements in the neighborhood emerge

Page 95: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

87

from g and have any other point close to g as tail, then g isan unstable equilibrium point. Instead, if all displacements inthe neighborhood tend towards g but none of them have g ashead, then g is an isolated stable equilibrium point.Orbits. When investigating the global behavior of the wholeregion, and not only of single points, that is, when tryingto recognize periodic or quasi-periodic orbits, one should beaware of getting the correct glimpse from the VFPS. Indeed,for construction, the VFPS shows the mean displacementsvectors for each node in the grid, hence it might occur thata quasi-periodic orbit can be misinterpreted as a periodicorbit. In general, it can be stated that if there exist somepoints g1, . . . , gn ∈ G, n ≥ 1, such that the head of −→ugj

corresponds to gj+1 for all j = 1, . . . , n− 1, and the head of−→ugn

corresponds to g1, then the system can exhibit a periodicorbit of period n through these points. However, due to thestochastic nature of the system and to the mean evaluation ofdisplacements, we are only able to hypothesize the presence ofa periodic orbit, which might as well be a quasi-periodic orbit.In order to distinguish among the two possible situations, it isstill necessary to look at one simulated evolution of the systemwhich, anyway, can be run for just one choice of the initialmultiset at a time by using the DPP simulator described in[5]. Obviously, if there exist some points g1, . . . , gn ∈ G,n ≥ 1 and some neighborhood U1, . . . , Un of g1, . . . , gn,respectively, such that the head of −→ugj

belongs to Uj+1 forall j = 1, . . . , n− 1, and the head of −→ugn

belongs to U1, thenwe can surely state that the system cannot exhibit a periodicorbit.

IV. APPLICATIONS

In this section we show the results of the application of thetool exposed in Section III to two simple toy-systems, whichshow a periodic and a stochastic behavior, respectively, andthen to the well-known biological system of Lotka-Volterra.The variety of the investigated systems allows to outline thebenefit of using the tool for very different situations.

A. A ping-pong system

A ping-pong system is a simple abstract model that showsa periodic behavior for any initial multiset. It consists of twosymbols X,Y only, which are rewritten one into the other,and no feeding multiset is assumed to be given as input to thesystem. Let ΠPP = (V,O, µ,M0, R0, ∅, 0) where V = O ={X,Y }, µ = [0 ]0, M0 = {Xp1Y p2} for some p1, p2 ∈ N,R0 = {r1 : X

k1−→ Y, r2 : Yk2−→ X} with k1, k2 ∈ R

+},I = {0}.

Starting from any initial multiset, all copies of each symbolX are transformed into copies of Y by means of rule r1, andviceversa. Due to the maximal parallelism at the level of ruleapplication and to the fact that rules r1, r2 do not competefor objects, this ping-pong process between X and Y subsists(and it is always the same) for any fixed value of the ruleconstants. Hence, in this particular toy-system, the followinganalysis is independent from the choice of k1, k2.

The application of the tool has been performed by fixingthe grain of the grid to (g1, g2) = (1, 1), choosing the subgrid

0

2

4

6

8

10

12

14

16

18

20

0 2 4 6 8 10 12 14 16 18 20

Fig. 2. VFPS for the ping-pong system.

0

2

4

6

8

10

12

14

16

18

20

0 2 4 6 8 10 12 14 16 18 20

Fig. 3. VFPS for the ping-pong system: orbit of period 2 (bold line) andstable points (bold squares).

as the space G = [0, 19] × [0, 19] and iterating the evaluationof the displacements for Z = 100 times.

In Figure 2 we show the VFPS of the ping-pong system:the arrows represent the mean displacements of all pointson the subgrid; bold arrows are used to show that for eachnode there exist two mean displacements, each one having itshead (represented by the arrow point) coinciding with the tail(represented by the dash) of the other one.

Then, in Figure 3 we represent the same VFPS with shorterarrows for the displacements, in order to better visualize all thestable equilibrium points (α, α), for any α ≥ 0 (bold squares).Moreover, we show a simulated evolution corresponding toa periodic orbit of period 2, consisting of the points g1 =(15, 10), g2 = (10, 15). Note that, for any choice of the initialmultiset g = (α, β), α, β > 0, there exist an orbit of period2 between g and its symmetrical point with respect to thediagonal, that is, g′ = (β, α).

B. A random toy-system

Here we introduce another simple abstract model whichshows a pure stochastic behavior; again, no feeding multiset isdefined. Let ΠTS = (V,O, µ,M0, R0, ∅, 0) where V = O ={X,Y }, µ = [0 ]0, M0 = {Xp1Y p2} for some p1, p2 ∈ N,R0 = {r1 : X

k1−→ λ, r2 : Xk2−→ XX, r3 : 40X

k3−→

80X, r4 : Yk4−→ λ, r5 : Y

k5−→ Y Y, r6 : 40Yk6−→ 80Y }

for some k1, . . . , k6 ∈ R+, I = {0}.

Page 96: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

88

980

1000

1020

1040

1060

1080

1100

1120

980 1000 1020 1040 1060 1080 1100 1120 1140

Fig. 4. VFPS for the random toy-system: mean displacements for Z = 10

(dashed arrows) and for Z = 100 (bold arrows).

850

900

950

1000

1050

1100

900 920 940 960 980 1000 1020 1040 1060 1080 1100

Fig. 5. VFPS for the random toy-system with non-uniform rule constantvalues.

The first application of the tool has been performed bysilencing rules r3, r6, that is, by fixing the rule constantsat the values k1 = k2 = k4 = k5 = 1, k3 = k6 = 0.The chosen grain is (g1, g2) = (10, 10) and the subgrid isG = [1000, 1100] × [1000, 1100]. The evaluation of eachmean displacement has been done for two distinct numberof iterations, namely Z = 10 and Z = 100, showing thateach point is stochastic since when the number of iterationsis incremented, the length of the mean displacements tends tozero (see Figure 4). By changing the constants of rules r2, r5

to the values k2 = 0.85, k5 = 0.75 and evaluating the VFPSfor Z = 100, in Figure 5 we show how the pure randombehavior turns into a probabilistic behavior with an emergingpreferred direction for evolution.

The second application has been done switching on alsorules r3, r6, with k3 = k6 = 1, and choosing (g1, g2) =(5, 5), G = [0, 95] × [0, 95] and Z = 100. In this case, theVFPS allows to discriminate between regions with stochasticbehavior (the part of the subgrid with very short arrowsrestricted to [0, 40] × [0, 40]) from those with a preferreddirection for evolutions. See Figure 6.

C. The Lotka-Volterra system

The Lotka-Volterra system, also known as the predator-prey model [4], is a continuous model that describes thepopulation dynamics of interacting species, where the growth

0

20

40

60

80

100

120

140

160

180

0 20 40 60 80 100 120 140 160 180

Fig. 6. VFPS for the random toy-system with stochastic (left-bottom corner)and emerging behaviors.

0

200

400

600

800

1000

1200

1400

1600

200 400 600 800 1000 1200 1400 1600 1800 2000 2200

Fig. 7. VFPS for the Lotka-Volterra with quasi-periodic cycle.

rate of one population is decreased while the other is in-creased, and viceversa. An investigation of the Lotka-Volterrasystem in terms of P systems previously appeared in [1],[5]. This model can be described in terms of DPPs asΠLV = (V,O, µ,M0, R0, ELV , 0) where V = {A,X, Y },O = {X,Y } (where A denotes the food resources, X thepreys, Y the predators), µ = [0 ]0, M0 = {Xp1Y p2} for somep1, p2 ∈ N, R0 = {r1 : AX

k1−→ XX, r2 : XYk2−→ Y Y, r3 :

Yk3−→ λ} for some k1, k2, k3 ∈ R

+, and I = {0}; theenvironment ELV is given by the alphabet of input resources{A}, the feeding multiset {As}, for some s ∈ N, and thefeeding rule r4 : A → (A, in0) which is used to keep theamount of resources inside the system at the constant value s.

The different behaviors of the Lotka-Volterra system interms of DPPs were characterized in [5]. For instance, thequasi-periodic oscillating behavior of the two species can befound by setting, e.g., k1 = 1, k2 = 10−2, k3 = 10, s = 200;a different population dynamics, namely an attractor can befound by setting k1 = 1, k2 = 10−2, k3 = 10, s = 1000,where a huge multiplicity for resource feeding is fixed. Byconsidering intermediate values of resource feeding multiplic-ity s, then intermediate behaviors of the system are produced.Similar dynamics can be obtained also by choosing differentsets of parameters. By using the parameters for relevantdynamics previously determined in [5], we show here how theVFPS can help in recognizing both the quasi-periodic cycleand the attractor.

Page 97: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

89

0

200

400

600

800

1000

1200

1400

1600

200 400 600 800 1000 1200 1400 1600 1800 2000 2200

Fig. 8. VFPS for the Lotka-Volterra with quasi-periodic cycle, overlappedwith an evolution.

0

500

1000

1500

2000

2500

3000

3500

4000

4500

0 500 1000 1500 2000 2500 3000 3500 4000

Fig. 9. VFPS of the Lotka-Volterra for the attractor with an evolution.

Using the values for the first characterized behavior andfixing the grain (g1, g2) = (90, 60), the subgrid G =[200, 1910] × [0, 1140] and Z = 100, in Figure 7 we canrepresent the mean displacements lying over a quasi-periodiccycle. In Figure 8, for the same set of values and the sameVFPS, we also show an evolution of the system starting fromthe point (1000, 1000).

Instead, using the values for the second characterized be-havior (and changing only s = 800) and fixing the grain(g1, g2) = (150, 175), the subgrid G = [0, 2850] × [0, 3325]and Z = 100, in Figure 9 we can show the presence of anattractor at point g = (1600, 1600). In Figure 10 we enlargethe neighborhood U = [1500, 1690]× [1500, 1690] (with grain

1400

1450

1500

1550

1600

1650

1700

1750

1800

1500 1520 1540 1560 1580 1600 1620 1640 1660 1680 1700

Fig. 10. Zoom of VFPS of the Lotka-Volterra for the attractor.

(g1, g2) = (10, 10)) of the attractor.

V. CONCLUSION

The principal purpose of the tool presented in this paperis to determine whether a dynamical probabilistic P systemshows a pure stochastic dynamic or, otherwise, to investigatemore complex dynamics, such as the presence of attractors,quasi-periodic cycles, and so on. The main advantage consistsin the possibility of simultaneously analyzing a wide set ofinitial multisets with low computational costs.

Although this tool has been designed to predict and rep-resent the behavior of single membranes, it can be as wellapplied to the investigation of systems with a more complexmembrane structure. For instance, in [5] DPPs were usedto model and analyze metapopulation systems, defined asa collection of populations interacting locally in a patch(according to the Lotka-Volterra model) and globally in adispersal pool [9]. In this case, the VFPS can be used toinvestigate the local dynamics occurring inside each patch andin the dispersal pool.

Finally, there exist intrinsic problems in the development ofthe same kind of tool for systems where more than two typesof objects simultaneously evolve and interact. Nonetheless, theimplementation and graphical representation of the VFPS forDPPs with |O| = 3 can be considered an interesting futureresearch application.Acknowledgment. This work has been supported by theItalian Ministry of University (MIUR), under project PRIN-04 “Systems Biology: modellazione, linguaggi e analisi(SYBILLA)”.

REFERENCES

[1] L. Bianco, F. Fontana, G. Franco, and V. Manca. P systems for biologicaldynamics. In Ciobanu et al. [2], pages 81–126.

[2] G. Ciobanu, G. Paun, and M.J. Perez-Jimenez, editors. Applications ofMembrane Computing. Springer-Verlag, Berlin, 2005.

[3] D.T. Gillespie. Exact stochastic simulation of coupled chemical reactions.Journ. Phys. Chem., 81(25):2340–2361, 1977.

[4] J. Murray. Mathematical Biology, chapter 3. Springer-Verlag, New York,1st edition, 1989.

[5] D. Pescini, D. Besozzi, G. Mauri, and C. Zandron. Dynamical probabilis-tic P systems. International Journal of Foundations of Computer Science,submitted for publication.

[6] D. Pescini, D. Besozzi, C. Zandron, and G. Mauri. Analysis and simu-lation of dynamics in probabilistic P systems. In A. Carbone, M. Daley,L. Kari, I. McQuillan, and N. Pierce, editors, Pre-Proceedings of the 11thInternational Conference on DNA Computing, London, Ontario, Canada,pages 310–321, 2005.

[7] G. Paun. Computing with membranes. Journal of Computer and SystemSciences, 61(1):108–143, 2000.

[8] G. Paun. Membrane Computing. An Introduction. Springer-Verlag, Berlin,2002.

[9] A.D. Taylor. Metapopulations, dispersal, and predator-prey dynamics: anoverview. Ecology, 71(2):429–433, 1990.

Page 98: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

90

Page 99: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

Simulation of Continuous-time P Systems usingDescriptive Rewriting Timed Petri Nets

Aurelia Profir,Institute of Applied Physics, Academy of Sciences, Chisinau, Republic of Moldova

[email protected] Gutuleac,

Technical University of Moldova, Chisinau, Republic of [email protected]

Elena Boian,Institute of Mathematics and Computer Science, Academy of Sciences, Chisinau, Moldova

[email protected]

Abstract— In this paper 1 we propose a new approach toexpress the components of continuous-time P systems throughoutcomponents of descriptive Rewriting Timed Petri Nets (RTN).Weintroduce the notion of macronodes, which map subnets, todynamically modify RTN structure. The macronodes are specifiedby marking-controlled descriptive expressions. As example weanalyze an optimized P transducer model of the gene switching.

I. COMPONENTS OF THE CONTINUOUS-TIME P SYSTEMSAND DESCRIPTIVE RTN

P systems are abstract parallel and distributed computingdevices inspired by the structure and the functioning of theliving cell. A lot of P systems formalisms had been proposed:cell-like and tissue-like P systems, discrete, continuous-timeand continuous P systems, etc. [1], [2], [3]. Petri nets (PN)are very popular formalism for the modeling and performanceanalysis of concurrent distributed systems. Various extensionshave been made within the Petri nets (PN) framework: discrete,timed stochastic, continuous, hybrid, etc. [4], [5]. Some effortshave been made to encode discrete P systems with PN [6], [7].

Our aim is to express components of continuous-time Psystems [3] by means of descriptive RTN components [5].

A continuous-time P system, involving rates associated withrules, that combines the discrete and continuous aspects ofbiosystems, is a construct:

Π = (V, µ,w01, . . . w

0k, R1, . . . , Rk),

where: V is the alphabet of objects; µ – membrane structureof the degree k ≥ 1 (number of membranes); w0

1, . . . w0k

–sets of objects over V ∗ initially present in each membraneof µ; R1, . . . , Rk – finite sets of rules associated with eachmembrane of µ.

The rates, denoted by rm ∈ R+, m ∈ N+, are associatedwith the rules of the continuous-time P system. A rule isapplied at an instant ti+1 ∈ R+ according to rm as follows.We consider time delay, denoted by dm, which is inverseproportional to the rate rm, between the instant ti ∈ R+ when

1This work is supported by CRDF-MRDA project, BGP-II, Award No.MM2-3034.

the rule became to be available and the instant ti+1 when therule is applied. dm = ti+1 − ti.

Let us describe the structure of descriptive RTN:

< P, T, Pre, Post, Test, Inh, G, Pri, l, R, Gr, φ, M, Θ >,

where: P , T – finite disjoint sets of places and (immediateand timed) transitions; Pre, Post, Test, Inh, – forward,backward, test, and inhibition functions in the multisets ofP , which define the set of direct normal, inhibitory and testarcs; G : T × N+ → {true, false} – guard function foreach transition; Pri : T → N+ – priority functions forthe firing of each transition; l : T ∪ P → L – labellingfunction that assigns labels to nodes (transitions or places),L – set of labels; R = {r1 . . . , rk} – finite set of rewritingrules about the runtime structural modification of the net;Gr : E × N |P| → {true, false} – rewriting guard functiondefines the enabling of the rule r ∈ R associated with thetransition t ∈ T , E = T ∪ R – set of events; φ → {T,R} –function defined for every transition that indicates the type ofevent that can occur; M : P → N+ – marking functions ofthe places. M0 – net initial marking; Θ : T × N

|P |

+ → R+

– weight function mapping transitions into real numbers R+

(delay time or weight speeds).The transition tj ∈ T of the event ej ∈ E and the rewriting

rule rj ∈ R are enabled in current marking M if the enablingconditions ec(tj ,M) and ec(rj ,M) = ec(tj ,M)&gr(rj ,M)are verified, respectively.

We use the concept of DE for analytical representationand compositional construction of RTN. A basic DE element(bDE) for a basic RTN is: bDE = |

ajej m0

ipi[W

+i

,W−

i]|ak

ek,

where ej is the input event with the action aj and ek is theoutput event with the action ak of the place pi with initialmarking m0

i= M0(pi). The flow relation functions W +

i=

Post(ej , pi) and W−

i= Pre(ek, pi) return the multiplicities

of the input and output arcs of pi.DE of RTN is either a bDE or a composition of DE:

DE ::= bDE|DE ∗DE| ◦DE, where ∗ and ◦ represent anybinary and any unary composition operations, respectively.

Some of them are the following.

Page 100: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

92

The unary inhibition “ -“ (pi) or test “ ˜ “ (pi) operations

describe the inhibitory or test arc, respectively.The binary place-sequential operation “|“ determines the

logics of an interaction between two local states: pre-conditionand post-condition, by the action (event). The specified con-ditions are fulfilled always.

The binary synchronization operation “•“ describes therendezvous synchronization by the event of two or more con-ditions, represented by places. It indicates that all precedingconditions of occurrence actions must be completed.

The binary split operation “♦“ determines the causal re-lations between the event and its post-conditions: after com-pletion of the preceding action simultaneously several otherpost-conditions can occur in parallel. The compositional binarycompeting parallelism operation “∨“ means that it can beapplied over two RTN nets: RTNA with DEA = A, andRTNB with DEB = B. The resulting net RTNR withDER = R can be represented by DER = R = A ∪ B. Thefused nodes, with the same names, will inherit the incidencearcs of the nodes A and B.

Introducing the macronodes we can refine RTN. This en-ables the refinement of a macronode x by a subnet representedby the DEx in the form x ¤ DEx. The macronodes arespecified by marking-controlled DEs.

II. P TRANSDUCER MODEL OF GENE SWITCHING

Let us analyze a P transducer model of the gene switch-ing, controlled by regulatory enzymes. Figure 1 depicts theelements of the transcriptional regulatory system of geneswith positive control. The e and g genes code for the reg-ulatory enzymes E and for the proteins G, considered asoutput signals. These genes are under the positive control ofthe activator molecules A. Regulatory region of these genescomprise a binding site for activators (BSA) and a promoter.The transcription termination site is denoted by T . The rateof enzymatic reaction can depend on different factors (forinstance, temperature), considered as input signals. So, theregulatory enzymes E can be either activated or inactivated.The activated enzymes E destroy the activator molecules A,due to their proteolytical activity.

PromoterBSA

No transcription

RNA polymerase

Transcription

No activator coding region of the & genese g T

N activator

Fig. 1. Scheme of gene expression mechanism with positive control.

Using the P transducer concept [2], [3] we built a formalmodel to illustrate the direct influence of temperature oneukaryotic gene switching. The P transducer model of thetemperature-dependent switching of gene expression may berepresented in the following way:

Π = (Oe, V, µe, µcell, we(i), w1, w2, B,Re(i), R1, R2),

i = 1, 2, 3, where: Oe = {A, p, pe} is the alphabet of objectsassociated with the system of elementary membranes that

maps the e and g genes. A represents an activator molecule; p

– RNA polymerase; pe – RNA polymerase transcribing thee and g genes into nuclear RNA copy;

V = {p, pe, ue, u, A,E,G, x} is the alphabet of objects ofthe cell-like membrane system, where: ue represents nuclearcopy of the e and g genes; E – regulatory enzyme, encoded bythe e gene; G – output ”marked” object [2]; u – mRNA copyof the e&g genes; x – temperature (input ”marked” object).Oe ⊆ V ;

µe = [e(1) e(1)|e(2) e(2)|e(3) e(3)] is the membranestructure, which includes the e(1), e(2) and e(3) elementarymembranes, arranged into chain that maps the e and g genes.The direct communication between membranes along thechain is done in a one-way manner: e(1) → e(2) → e(3).The first membrane of the chain (labelled e(1)) represents theregulatory region of these genes, it is called the input/outputmembrane. The last membrane e(3) representing the gene tran-scriptional termination site is named the output membrane. Thegene-coding region is mapped by the elementary membranee(2);

µcell = [2 [1 ]1 ]2 represents the structure of cell-like membrane system. Cellular membrane (the skin) is rep-resented by membrane 2, nucleus envelope – by membrane1. The membrane structure of the P transducer is µ =[2 [1 [e(1) e(1)|e(2) e(2)|e(3) e(3)] ]1 ]2;

we(i) (i = 1, 2, 3) represent the initial sets of objectsover O∗

eassociated with each elementary membrane of the

membrane structures µe;w1, w2 are the initial multisets over V ∗ associated with the

regions delimited by the membranes 1 and 2, respectively. Theinitial configuration of the P transducer can be represented asfollowing:

we(1) = {A, p}, we(2) = {p5e},

w1 = {p1000, A5000, E500}; w2 = {u15, E15, G15};B = {x,G} is object sets in the environment, B ⊆ V .Re(i) (i = 1, 2, 3) are finite sets of rules associated with

each elementary membrane of the membrane structure µe (thisrules are illustrate functions of the cellular gene network). Allthe relevant molecular interactions one-by-one with DNA aremodelled by these rules. Only one object is specified in therules described below.

(x, in)|rm¬a

or (x, in)|rm

¬ab– from the environment the object

x enters the input/output membrane only in the absence of theobject a or in the absence of the object ¬a and in the presenceof b. These conditional rules reflect the functional organizationof the gene regulatory region;

(x, out)|rm – the object x is sent out from the membranewith which the rule is associated, into the membrane 1;

(x, go)|rm – the object x leaves the membrane with whichthe rule is associated and passes to the next membrane of thechain;

(x → (y, go))|rm – the object x leaves the input/putputmembrane and it is replaced by the object y that passes to thenext membrane of the chain;

R1, R2 are finite sets of rules associated with the regionsthat map the cytoplasm and cell nucleus, respectively. Bio-chemical reactions that evolve in the cell cytoplasm (a partof protein network) are modelled by evolution rules [2]. The

Page 101: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

93

multisets of objects u and v evolve according to evolutionrules of the form (u → v)|rm , meaning that u is replaced byv. Symport rules (x, in)|rm and (x, outj)|

rm means that theobjects specified by x enter the membrane with which the ruleis associated and exit into the membrane j.

The symport rules associated with the skin (membrane2) might contain both “unmarked” and “marked” objects;the marked objects are of the form (a, read) or (a,write),a ∈ V . ((a, read), in)|rm means that the P transducer takesinput “marked” objects from the “input tape” to be translated.((a,write), out)|rm means that the P transducer can providea result in the form of the marked objects a ∈ V which arewritten to the “output tape” [2]. Symport rules describe a partof functions of the membrane network.

All P transducer rules are applied according to their ratesin a non-deterministic maximally parallel manner.

TABLE I. MAPPING OF THE P TRANSDUCER RULES BY DE.P transducer RTN

Mem. Rules DEe(1) (A, in)|

r1¬A

p8|r1t1

p1, g1 = (m1 = 0)

(A, out)|r2 p1|r2t2

p8

(p, in)|r3¬pA

p9|r3t3

p2,g3 = (m1 = 1)&(m2 = 0)

(p → (pe, go))|d4 p2|d4

t4p3,

p3¤ ∨20

i=17(pi|

di+3

ti+3pi+1)

d4 =P

20

i=17di,

m3 =P

20

i=17mi,

e(2) (pe, go)|r5 p3|r5t5

p4

e(3) (pe, out)|r6 p4|r6t6

p5

1 (pe → pue)|r7 p5|r7t7

p6♦p9

(ue → u)|r8 p6|r8t8

p7

(u, out)|d9 p7|d9

t9p13,

p13¤ ∨24

i=22(pi|

di+2

ti+2pi+1)

d9 =P

24

i=22di,

m13 =P

24

i=22mi,

(A → λ)|d10 p8[m30]|d10

t10,

p8¤ ∨29

i=26(pi|

di+1

ti+1pi+1)

(A, in)|r11 |r11t11

p8

(AE → E)|r12 (p8[m8] • ep10)|r12t12

,

g12 = (m12 = 1)

(E → λ)|d13 p10[m30]|d13

t13,

p10¤ ∨29

i=26(pi|

di+1

ti+1pi+1)

d13 =P

30

i=27di,

m10 =P

30

i=26mi,

2 ((x, read), in)|r14 p11[m11]|r14t14

p12[m11]

((u → λ)|d17 ; p13[m25]|d17

t17∨

(u → uEG)|r15 ) (ep13[m13]|r15t15

(p14[m13]♦

p15[m13]))(E, out1)|

r16 p14[m14]|r16t16

p10[m14]

((G, write), out)|r18 ep15|r18t18

p16

M0 = {m0

i = 1(i = 1, 2); m0

3= 5; m

0

8= 5000; m

0

9= 1000; m

0

10=

500; m0

i = 15(i = 13, 14, 15); m0

i = 1(i = 17, . . . , 21), m0

i = 100(i =22, . . . , 26); m

0

i = 1000(i = 26, . . . , 30)}.

III. MAPPING THE P TRANSDUCER RULES BY DE

Table I shows the P transducer rules mapped by DE. Toevery set of objects associated with a region of the membranestructure of the P transducer we put into correspondence aplace of RTN: p = (i, a) ∈ P , where i is the label of theregion where the set of objects a is localized. The markingof the place represents the number of the object copies. Theinitial state of the continuous-time P system is representedthrough the RTN initial marking M0.

In general, each rule of the P transducer model is mappedby one distinct event, but some rules are modelled by twoor more events, which belong to the subnets that replace themacronodes p3, p8, p10 and p13 (Table I).

The rules, associated with elementary membranes e(1),e(2), e(3) that map the genes with their regulatory region,model in detail three stages of the gene transcription process.The rules associated with e(1) membrane model the initiationof transcription: RNA polymerase and transcription factorsreversible interaction with the regulatory region of the genes.The rule associated with the e(2) describes the movementof RNA polymerase along the gene-coding region. The ruleassociated with e(3) illustrates RNA polymerase leaving theend of the gene.

PlaceTimed

ransitionTMacroplace

Legend:

Test arc Normal arc

Fig. 2. RTN model of the P transducer.

The RTN model represented in Fig. 2 contains the p3, p8,p10 and p13 macroplaces. The number of places that composethe subnet, which replaces the macroplace p3, correlates withthe maximal number of RNA polymerases transcribing the e

and g activated genes (Fig. 1). In the P transducer model ofthe living cell, introduced in [3], the number of elementarymembranes that map the gene-coding region correlates withthe maximal number of RNA polymerases transcribing theactivated gene. In this paper, introducing the macronodes, weoptimized the P transducer model of the living cell mappingthe gene-coding region only by one elementary membrane. Onthe one hand, the subnets associated with the macronodes p8,p10 and p13, keep the information about each object (i.e., A,E or u) placed there: when each object has been produced andwhen it will be destroyed. On the other hand, the macroplacemarkings indicate the total number of objects (tokens) that arelocalized within the places of the corresponding subnets.

10 C 30 C0

0

E Xx (temperature)

n pe u

Aactivated genes inactivated genes Aactivated genes inactivated genes

Fig. 3. Simulation results of the RTN model.

Figure 3 shows that the e and g genes can be inactivated if

Page 102: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

94

the temperature will increase from 100C to 300C. The P trans-ducer model allows to elucidate an important characteristic ofgene function such as different levels of gene expression andpermit us to monitor small and gradual changes of the geneexpression and protein profiles.

IV. CONCLUSIONS

We analyzed the opportunity of modelling continuous-timeP systems using the descriptive RTN. Introducing the conceptof macronodes the P transducer model of the living cell [3] isoptimized. On the one hand, DNA (in a gene) can be modeledonly by three elementary membranes, arranged into chain. Onthe other hand, we can obtain more occurate simulation rezultsabout the gene expression and protein profiles.

It is shown that the P transducer model of the geneswitching unify the main aspects of biological systems of higharchitectural complexity: a) structure-functional organizationboth at DNA and cellular levels; b) integration of all cellu-lar networks (gene regulatory network, protein network, andmembrane network) into an entire system;

Note, RTNs allow to describe rules for membrane process-ing (i.e., rules of membrane dissolving, creating, dividing,etc.). Within this framework we intent to implement theDescriptive Membrane Timed PN for adequate representationof structural dynamic changes within modeled P systems usingdescriptive rewriting rules.

REFERENCES

[1] Gh. Paun, ”Membrane Computing. An Introduction,”-Natural computingSeries. ed. G. Rozenberg, Th. Back, A.E. EibenJ.N. Kok, H.P. Spaink,Leiden Center for Natural Computing, Springer - Verlag Berlin Heidel-berg New York, 2002, p. 420.

[2] G. Ciobanu, Gh. Paun, G. Stefanescu, “ Transducers,“ New GenerationComputing, 2005, nr.1.

[3] N. Barbacari, A. Profir, C. Zelinschi, “Gene regulatory network mod-elling by means of membrane Systems,“ In Proc. WMC6 2005, Wien,Austria, 2005, pp. 162 –178.

[4] A. Alla, H. David, “Continuous and hybrid Petri nets,“ Journal ofsystems Circuits and Computers, 8(1), 1998, pp. 159-188.

[5] E. Gutuleac, “Descriptive Compositional Construction of GSPN Modelsfor Performance Evaluation of Computer Systems,“ In: Proc. of 8-thInternational Symposium SACCS2004, Iasi, Romania, 2004, ISBN 973-621-086-3.

[6] Z. Qi, J. You, and H. Mao, ”P Systems and Petri Nets,” In Proc. WMC2003, Lecture Notes in Computer Science, vol. 2933, Springer, Berlin,2003, pp. 387-403.

[7] J. Kleijn, M. Koutny, G. Rozenberg, “ Towards a Petri Net Semanticsfor Membrane Systems,“ In Proc. WMC6 2005, Wien, Austria, 2005,pp. 439-460.

Page 103: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

On Generating Trees by P Systems with ActiveMembranesR. Rama and H. Ramesh

Department of MathematicsIndian Institute of Technology, Madras

Chennai, IndiaEmail: {ramar, ramesh h}@iitm.ac.in

Abstract— In this paper, we consider P systems with membranecreation working with symbol objects. As a result of a haltingcomputation we do not take the set of numbers generated in adesignated output membrane, instead we take the resulting treerepresenting the membrane structure of the final configuration.We prove that each recursively enumerable tree language can beobtained by this system.

I. INTRODUCTION

P systems are models of computation which are inspired bysome basic features of biological membranes. In a P systemmultisets of objects are placed in the compartments definedby the membrane structures, and they evolve by means ofevolution rules also associated with the compartments, andapplied in a maximally parallel, nondeterministic manner. Theobjects can pass through membranes, the membranes canchange their permeability, they can dissolve, they can divide,and they can be created. These features are used in definingtransitions between configurations of the system, and sequenceof transitions are used to define computations. In this waywe compute a set of numbers. Many variants are alreadyinvestigated and most of them are computationally universal.For a detailed overview we refer the reader to [7].

The membrane structure plays an important role in Psystems. Usually P systems have been considered as devicesfor generating or accepting multisets of symbol objects orstring objects to be found in a designated output membraneor in the environment in the halting configuration. Here wetake the membrane structure itself as the result of a successfulcomputation as in [4].

In P systems with membrane creation, new membranes arecreated under the influence of the existing objects. Togetherwith the rules for membrane creation, we can have the usualrules: cooperative, catalytic, or non-cooperative with or with-out priority relation, or membrane thickness control by meansof actions δ, τ . Here we consider P systems with membranecreation working on symbol objects and with non-cooperativerules and rules for dissolving to generate tree languages. Incontrast to the original paper [4], only symbol objects andnot strings are used for enlarging the tree structure; on theother hand, the price that has to be paid in contrast to theoriginal construction in [4] is that in some rules the changingof membrane labels cannot be avoided.

II. PRELIMINARIES

An alphabet V is a finite set of abstract symbols. The set ofall strings over an alphabet V is denoted by V ∗. We denotethe empty string by λ. The set of nonempty strings overV is denoted by V +. V ∗ is a free monoid generated by V

under the operation of concatenation. The unit element of thismonoid is λ. The length of the string w ∈ V ∗ is denoted by|w|. We denote the set of natural numbers by N, the familyof recursively enumerable languages by RE and the familyof sets of recursively enumerable languages over a one-letteralphabet by NRE.

A grammar is a quadraple G = (N,T, P, S), where N andT are finite set of nonterminal and terminal symbols, andN ∩ T = ∅, P is a finite set of productions of the formu → v, where u, v ∈ (N ∪ T )∗ with u having atleast onenonterminal, and S ∈ N is the axiom. For x, y ∈ V ∗, y isdirectly derivable from x, denoted by x ⇒ y, if x = x1ux2,y = y1vy2 for some x1, x2, y1, y2 ∈ (N∪T )∗ and u → v ∈ P .The reflexive and transitive closure of this relation is denotedby ⇒∗

G. The language generated by the grammar G is L(G) =

{w ∈ T ∗ | S ⇒∗

Gw}. A grammar is said to be context-free

if all the productions are of the form A → v for A ∈ N . Acontext-free grammar is said to be in Chomsky normal formif it contains only rules of the form A → BC,A → a forA,B,C ∈ N and a ∈ T . A Chomsky normal form is usuallyassumed to be reduced, which means that every non-terminalcan be reached from the start symbol.

A deterministic register machine is a construct M =(n,R, l0, lh), where n is the number of registers, R is a finiteset of instructions labelled with the elements of a given setlabels of lab(M) in a one-to-one manner, l0 is the initial label,and lh is the final label. The instructions in R are of the form:

• l1 : (add(i), l2)Add 1 to the content of the register i and go to theinstruction labelled with l2. This is an ADD instruction.

• l1 : (sub(i), l2, l3)If the register i is not empty, subtract 1 from its contentsand proceed to the instruction labelled with l2, otherwisego to the instruction l3. This is a SUB instruction.

• lh : haltStop the machine. The label lh is assigned only to thisinstruction.

A register machine M is said to accept a natural number

Page 104: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

96

m if and only if, starting with the instruction with label l0and with register one containing the number m as well as allother registers containing 0, the machine halts with all registerscontaining 0.

It was known that (e.g., see [5]) the register machines arecomputationally universal, equal in power with the determinis-tic Turing machines, i.e., they accept exactly the sets of naturalnumbers which can be accepted by Turing machines. We usethe main result in [5] that each deterministic Turing machinecan be simulated by a register machine with only 2 registers.

Let T be the terminal alphabet with card(T ) = z − 1 andT = {ai | 1 ≤ i ≤ z − 1}. Then every symbol ai ∈ T canbe represented as the digit i in base z. Hence, every wordin T ∗ can be encoded as a non-negative integer using thefunction gz : T ∗ → N defined by gz(λ) = 0, gz(ai) = i for1 ≤ i ≤ z − 1, and gz(wa) = gz(w).z + gz(a) for a ∈ T

and w ∈ T ∗. In this way, we can make the register machineto accept the string languages L ⊆ T ∗ accepted by Turingmachines. The following result can be found in [5].

Proposition 1: Let L ⊆ T ∗ be a language accepted by theTuring machine MT in such a way that, for every w ∈ T ∗, MT

halts if and only if w ∈ L. Then we can effectively constructa 2-register machine ML such that, for every w ∈ T ∗, ifML starts with 2gz(w) in its first register, then the programterminates if and only if MT halts on w (i.e, if and only ifw ∈ L). Moreover, without loss of generality, we can assumethat if ML halts on input 2gz(w), then the contents of bothregisters is zero.

III. GENERATING TREES BY P SYSTEMS WITH MEMBRANECREATION WORKING ON SYMBOL OBJECTS

A P system with membrane creation working on symbolobjects is a construct

Π = (V, T,H, µ,w1, . . . , wm, R)

where• V is an alphabet;• T ⊆ V is terminal alphabet;• µ is a membrane structure with m membranes labelled

with 1, 2,. . . ,m (0 is always the label of the skin mem-brane);

• w1,. . . ,wm are finite multisets of objects over V rep-resenting the initial contents of the regions inside themembranes 1, 2,. . . ,m;

• R is a finite set of rules of the following forms:(a) [A]h → [v]

h′ , where A ∈ V, v ∈ V ∗, h, h

∈ H (Ais rewritten into v in a membrane labelled with h

thereby changing its label to h′

);(b) A[ ]h → [v]

h′ , where A ∈ V, v ∈ V ∗, h, h

∈ H

(A is rewritten into v and then the resulting multisetrepresented by the string v is sent into a membranelabelled with h thereby changing its label to h

);(c) [A]h → v[ ]

h′ , where A ∈ V, v ∈ V ∗, h, h

∈H (A is rewritten into v and then the resultingmultiset represented by the string v is sent out ofthe membrane labelled with h thereby changing itslabel to h

);

(d) [A]h → v, where A ∈ V, v ∈ V ∗, h ∈ H (A isrewritten into v and at the same time the surroundingmembrane labelled with h is dissolved);

(e) [A]h → [[v]h

′′ ]h

′ , where A ∈ V, v ∈ V ∗, h, h′

, h′′

∈H (A in the membrane labelled with h, by changingthe label to h

, is rewritten into v and then theresulting multiset represented by the string v is sentinto a newly generated inner membrane labelled withh

′′

.The rules are applied in a maximally parallel and non-

deterministic manner. The rules of the innermost region areapplied first. In a region, all objects which can evolve usinga rule must evolve if they do not change the label of the sur-rounding membrane. Afterwards, only one rule which changethe label of the surrounding/involved membrane or dissolve itcan be applied. The rules associated with a membrane labelledwith h are used for all copies of this membrane. Here we usethe same notions and terminology as in [4]. By (x0), withx ∈ {a, b, c, d, e}, we denote the types of rules correspondingto x which do not change the label of the membrane involved.

We consider the tree represented by the membrane structureof the final configuration as a result of the halting configura-tion. The root corresponding to the skin membrane is alwayslabelled with 0. Suppose the membrane labelled with j isinside the membrane labelled with i. Then the edge in thecorresponding tree joining i and j will get label j. In the finalconfiguration, the content of each region should be a singletona ∈ T which is taken as the label of the correspondingnode in the tree. If this condition is not fulfilled, then thecorresponding configuration does not contribute to the treelanguage. By L(Π) we denote the language generated by Πdescribed as above. Let D ⊆ {x, x0|x ∈ {a, b, c, d, e}. Wedenote the family of tree languages generated by P systemswith membrane creation and working with symbol objects andusing only rules from D by LPT (D). Let TRE denote thefamily of recursively enumerable tree languages over a finitealphabet of labels for nodes and edges.

Example 1: Consider a context-free grammar in Chomskynormal form G = (N,T, P, S). Then we construct a P system

Π = (N ∪ T, T,H, [ ]0, S,R)

with the following rules in R:

• [S]0 → [a]0 for S → a ∈ P and a ∈ T ;

• [S]0 → [B′

C′′

]0, [B′

]0 → [ [B]1]0 and

[C′′

]0 → [ [C]2]0 for S → BC ∈ P and B,C ∈ N ;

• [A]h → [a]h for A → a ∈ P,A ∈ N anda ∈ T, h ∈ {1, 2};

• [A]h → [B′

C′′

]h, [B′

]h → [ [B]1]h and

[C′′

]h → [ [C]2]h for h ∈ {1, 2},

A → BC ∈ P and A,B,C ∈ N .

Page 105: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

97

We can assume G to be reduced. The termination of computa-tion in Π means that we get the resulting membrane structurein the final configuration as our terminal tree result. The treeswe obtain are nothing else but the derivation trees of G.

A. Main Result

Theorem 1: Each recursively enumerable tree languageover finite alphabets of labels for nodes and edges can begenerated by a P system with membrane creation working onsymbol objects. i.e., LPT ({a, b, c, d0, e0}) = TRE.

Proof (Sketch): We give the proof for the inclusion

LPT ({a, b, c, d0, e0}) ⊇ TRE

The other inclusion is obvious. Let Lt be a tree language overthe alphabet T for the labels of the nodes and the alphabet{i | 1 ≤ i ≤ k} for the labels of the edges. We construct a Psystem

Π = (V, T,H, []0, X0, R)

such that L(Π) = Lt. Here H contains {i | 0 ≤ i ≤ k} andsome more labels which are clear from the definition of therules in R.

The idea is to generate the membrane structure correspond-ing to the arbitrary tree over T and {i | 0 ≤ i ≤ k} and inparallel encode the tree by encoding the corresponding rulestaken for the generation of the membrane structure. We take aspecific symbol corresponding to every rule that is relevant forthe generation of the membrane structure. Let the cardinalityof this set be z. Then a sequence of these rules can be encodednot only by a word w, but also by a number gz+1(w) at basez + 1.

Let Lt be the given tree language. Then by definition, thereexists a Turing machine MT (Lt) which accepts the code c(s)of the tree s if and only if s ∈ Lt. From MT (Lt) we canconstruct a Turing machine M

T(Lt) that accepts the code w

of a tree s described above if and only if s ∈ Lt. Then byProposition 1, there exists a register machine MR(Lt) suchthat for each w it accepts the number 2gz+1(w) if and only ifM

T(Lt) accepts w.

We have the following rules in R:

• [X0]0 → [aXAEgz+1(a)1 ]0 for a ∈ T ;

[XA]0 → [ [XA]C ]0;

E1[ ]C → [E1]C ;

The symbol E1 is used for representing the contents ofregister one of MR(Lt) in that moment of simulation.Whenever XA appears in the skin membrane it will startthe acceptance check. In the checking phase, from n

symbols E1 first we have to generate 2n symbols E1

and then simulates the actions of the register machineMR(Lt). We will end up with the symbol Xhalt if andonly if the generated membrane structure corresponds to

a tree in Lt. Otherwise we will end up in an infinite loop.

• [X0]0 → [aXGEgz+1(a)1 ]0 for a ∈ T ;

• [XG]h → [ [ a < XG, h, a, h′

>]h

N

]h;

E1[ ]h

N

→ [E1]h′

N

;

[< XG, h, a, h′

>]h

N

→ [¿ XG, h, a, h′

À]h

N

;

[XG]h

N

→ XG[ ]h

F

;

[E1]h′

F

→ E1[ ]h

′ for h, h′

∈ H;

The symbol XG will generate a child of a node. Thesubroutine ¿ XG, h, a, h

À encodes the generationof a new membrane labelled by h

from the membranelabelled by h, whose node label is a, and will returnthe symbol XG for the generation of a new child. Aftercarrying out the subroutine, the label of the newlygenerated membrane h

Nis changed to the desired label

h′

and the symbols E1 are sent back to the surroundingmembrane labelled by h by intermediately changing thelabel h

Nto h

Fby using suitable rules.

• [XG]h → [XG]h for 1 ≤ h ≤ k;

At any time the symbol XG can become XG. Thesymbol XG can now move to some other membrane andstart generating a new membranes from there.

• [XG]h →< XG, h, out, 1 > [ ]hO;

< XG, h, out, 1 > [ ]hO→ [< XG, h, out, 2 >]hO

;

[< XG, h, out, 2 >]hO→< XG, h, out > [ ]h;

[< XG, h, out >]h → [¿ XG, h, out À]h;

[E1]hO→ E1[ ]hO

for h ∈ H;

• XG[ ]h → [< XG, h, in >]hI;

[< XG, h, in >]hI→ [¿ XG, h, in À]hI

;

E1[ ]hI→ [E1]hI

;

[XG]hI→ [XG]h for h ∈ H;

The subroutines ¿ XG, h, out À and ¿ XG, h, in Àencode the movements of the symbol XG to someother membranes and both will return XG to generatea new membrane. After carrying out the subroutine¿ XG, h, in À, the label of the membrane hI ischanged to the desired label h.

• [XG]h → [XA]hE;

Page 106: Gabriel CIOBANU, Gheorghe PĂUN (Editors)psystems.disco.unimib.it/download/volTAPS.pdf · Gheorghe Paun Institute of Mathematics of the Romanian Academy PO Box 1-764, 7014700 Bucures‚ti,

98

[E1]hE→ [E

1]hE;

[XA]hE→ XA[ ]h;

• [XA]h → XA[ ]h for 1 ≤ h ≤ k;

[XA]0 → [XA]0;

[E′

1]h → E′

1[ ]h for 1 ≤ h ≤ k;

[E′

1]0 → [E1]0;

At some point of time, we have to end the generationphase and start the acceptance phase which has beendone by the rules listed above.

• [Xhalt]C → λ;

• [Ei]h → [#]h for h ∈ {0 ≤ i ≤ k} ∪ {C};

[#]h → [#]h for h ∈ {0 ≤ i ≤ k} ∪ {C}.

# is the trap symbol (which will lead us to anon-halting computation).

The ADD and SUB instructions of a register machinecan be simulated as follows:

• The ADD instruction X1 : (add(ri), X2) can besimulated by the following rules. Here the numberof symbols Ei corresponds to the value stored in theregister i.

[X1]h → [EiX2]h for h ∈ {1 ≤ i ≤ k} ∪ {C};

• The SUB instruction X1 : (sub(ri), X2, X3) of theregister machine can be simulated as follows:

[X1]h → [[X2]Ei]h for h ∈ {1 ≤ i ≤ k} ∪ {C};

Ei[ ]Ei→ [Ei]Ei

;

[Ei]Ei→ λ;

[X2]Ei→ #.

If there is no symbol Ei, then the rule [X2]Ei→ #

will introduce the trap symbol #. If the symbol Ei ispresent, then we proceed with the symbol X2.

Suppose that the register i is empty. Now the occurrenceof the symbol Ei will introduce the trap symbol #.Otherwise we proceed with the label X3.

[X1]h → [[X′

3]E′

i

]h for h ∈ {1 ≤ i ≤ k} ∪ {C};

Ei[ ]E

i

→ [#]E

i

;

[X′

3]E′

i

→ [X′′

3 ]E

i

;

[X′′

3 ]E

i

→ X3.

We will reach a halting computation if and only if the registermachine MR(Lt) halts. This completes the proof.

IV. CONCLUSION

We take the tree representing the membrane structure ofthe final configuration as the result. We conclude that Psystems with membrane creation working on symbol objectscan generate any recursively enumerable tree language. Unlikein [4] we use only membrane creation for the generation andwe work with only symbol objects, but we allow changinglabels in the rules of types (a), (b), and (c).

REFERENCES

[1] E. Csuhaj-Varju, A. D. Nola, Gh. Paun, M. J. Perez Jimenez, andG. Vaszil. Editing configurations of p systems. Proceedings of theBWMC3, Sevilla, pages 131–154, 2005.

[2] J. Dassow and Gh. Paun. Regulated Rewriting in Formal LanguageTheory. Springer-Verlag, Berlin, 1989.

[3] R. Freund, C. Martin-Vide, and Gh. Paun. From regulated rewritingto computing with membranes: Collapsing hierarchies. TheoreticalComputer Science, 312:143–188, 2004.

[4] R. Freund, M. Oswald, and A. Paun. P systems generating trees. Preproceedings of WMC5, Milan, pages 221–232, 2004.

[5] M. L. Minsky. Computation : Finite and Infinite Machines. Prentice Hall,Englewood Cliffs, New Jersey, USA, 1967.

[6] Gh. Paun. Computing with membranes. Journal of Computer and SystemSciences, 61(1):108–143, 2000.

[7] Gh. Paun. Membrane Computing: An Introduction. Springer-Verlag,Berlin, 2002.

[8] A. Salomaa and G. Rozenberg(eds). Handbook of Formal Languages (3vols). Springer-Verlag, Berlin, 1997.