09.09.2014 Views

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

A. Ţurcanu, F. Ipate<br />

2 Simplifying Event-B Models of Cell-like<br />

P Systems<br />

In this secti<strong>on</strong> we present some general ideas about how to build a reduced and<br />

“more n<strong>on</strong>-deterministic” model of a cell-like P system which uses transformati<strong>on</strong><br />

rules. The main idea of our modelling approach is that all the rules with<br />

the same number of objects <strong>on</strong> the left side are similar and so we can associate<br />

to all of them <strong>on</strong>ly <strong>on</strong>e Event-B event.<br />

The set of P system objects will be denoted SYMBOLS, and a subset of<br />

the cartesian product SYMBOLS × N × SYMBOLS × N denoted PAIRS will<br />

c<strong>on</strong>tain all the pairs of objects from the left and the right side of each rule<br />

together with their multiplicities. If all the objects have the multiplicity 1, then<br />

the multiplicities can be omitted. If two rules have the same left side then the<br />

corresp<strong>on</strong>ding objects are renamed and added to SYMBOLS, and their values<br />

are modified in the same time with the values of the initial objects.<br />

Two functi<strong>on</strong>s objects, pobjects : SY MBOLS → N are used to represent<br />

the existing objects and the objects produced between two steps of maximal<br />

parallelism in each membrane, respectively. In a special event, called update,<br />

each value of pobjects is added to the corresp<strong>on</strong>ding value in objects and the<br />

values of pobjects are reset to 0.<br />

We c<strong>on</strong>sider as an example a simple P system with <strong>on</strong>e membrane and<br />

three rules: s → ab, a → ac, b → c. In this case SYMBOLS= {s, a, b, c} and<br />

PAIRS = {(s, a); (s, b); (a, a); (a, c); (b, c)} and we associate to all the rules the<br />

following Event-B event:<br />

Rule123<br />

any<br />

x<br />

where<br />

then<br />

end<br />

grd1 : x ∈ SY MBOLS & objects(x) > 0<br />

grd2 : ∃y.y ∈ SY MBOLS&(x, y) ∈ PAIRS<br />

act1 : objects : |(∀y.y ∈ SY MBOLS& y ≠ x ⇒<br />

objects ′ (y) =objects(y)&objects ′ (x) :=objects(x) − 1)<br />

act2 : pobjects : |((∀y.y ∈ SY MBOLS&(x, y) ∈ PAIRS<br />

⇒ pobjects ′ (y) =pobjects(y) + 1&(∀y.y ∈ SY MBOLS&<br />

(x, y) /∈ PAIRS ⇒ pobjects ′ (y) =pobjects(y))<br />

This event can be used, in general, in any P system, to substitute all the rules<br />

with <strong>on</strong>e object <strong>on</strong> the left side. If the generic objects x and y have multiplicities<br />

then the values of objects(x) is decremented with the multiplicity of x in the<br />

first acti<strong>on</strong> and the value of pobjects(y) is incremented with its multiplicity in<br />

the sec<strong>on</strong>d <strong>on</strong>e.<br />

Communicati<strong>on</strong> rules are quite similar except that, in the sec<strong>on</strong>d acti<strong>on</strong>,<br />

they modify the values of the functi<strong>on</strong> pobject associated with another membrane.<br />

These ideas can be extended for rules with many objects <strong>on</strong> the left side,<br />

specifying that the number of event parameters will increase accordingly.<br />

456

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!