• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Non-confluent P systems with active membranes
 

Non-confluent P systems with active membranes

on

  • 1,290 views

A talk I gave for the exam Computing models and computational complexity held by prof. G. Mauri, Università degli Studi di Milano-Bicocca, Italy, 26 February 2009

A talk I gave for the exam Computing models and computational complexity held by prof. G. Mauri, Università degli Studi di Milano-Bicocca, Italy, 26 February 2009

Statistics

Views

Total Views
1,290
Views on SlideShare
1,290
Embed Views
0

Actions

Likes
0
Downloads
1
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Non-confluent P systems with active membranes Non-confluent P systems with active membranes Presentation Transcript

    • Non-confluent P systems with active membranes Antonio E. Porreca porreca@disco.unimib.itDipartimento di Informatica, Sistemistica e Comunicazione Universit` degli Studi di Milano-Bicocca, Italy a February 26, 2009
    • P systems with active membranes(without division) A membrane structure µ (rooted unordered tree) with labels Λ and polarizations {+, 0, −} A multiset of objects in Γ inside each region A set R of rules of the following types: Evolution: [a → w ]α h Communication: [a]α → [ ]β b h h Communication: a [ ]h → [b]β α h Dissolution: [a]α → b h No membrane division rules Maximally parallel, nondeterministic application
    • Recogniser P systems The alphabet Γ contains objects yes and no Every computation is halting, and exactly one of yes, no is sent out from the skin to signal the result When all computations agree on the result, the P system is said to be confluent If this is not necessarily the case, it is said to be non-confluent and the global result is acceptance iff there exists an accepting computation (like NDTMs)
    • Solving decision problems semi-uniformly Let L ⊆ Σ be a language To each string x ∈ Σ we associate a P system Πx deciding whether x ∈ L The mapping x → Πx is polynomial-time computable via a Turing machine M The set Π = {Πx | x ∈ Σ } is called a polynomially semi-uniform family of P systems We say that Π decides L; in symbols L = L(Π)
    • Time complexity classes for P systems L ∈ PMCNAM iff L is decided by Π where Π is a polynomially semi-uniform family of P systems with active membranes without division Each Πx is confluent There exists a polynomial p such that, for each x ∈ Σ , every computation of Πx halts within p(|x|) computation steps L ∈ NPMCNAM iff L is decided by Π as above, except that Each Πx is non-confluent Other classes are defined in an analogous way
    • Solving the Boolean formula value problem Given a Boolean formula φ ∈ Φ0 , where Φ0 → 0 | 1 | (Φ0 ∧ Φ0 ) | (Φ0 ∨ Φ0 ) | ¬Φ0 . . . decide whether φ evaluates to 1 (Of course this problem is in P) Let us solve it by using P systems
    • Parse trees of formulae A formula can be described by its parse tree For instance 1 ∧ ¬0 has the following parse tree: ∧ 1 ¬ 0 Formulae are trees, membrane structures are trees. . .
    • Representing formulae with membranes φ ≡ 1 ∧ ¬0 =⇒ 11 ∧2 ¬3 04 2 1 3 4 1 3 4 2
    • Evaluating formulae We put an object 0 or 1 inside elementary membranes representing such constants We send out from each membrane h an object representing the value of the subformula having as root the connective represented by h The value are computed by using communication rules and polarizations Membrane structures are unordered, but ∧ and ∨ are commutative ⇒ no problem
    • Evaluating formulae (example) If φ ≡ 11 ∧2 ¬3 04 , the membrane structure is 2 1 3 4 1 3 4 2 The output of each membrane must be Membrane Output 1 1 2 1 3 1 4 0
    • Evaluating subformulae If h represents a Boolean constant (0 or 1) [0]0 → [ ]− 0 h h [1]0 → [ ]− 1 h h If h represents a conjunction (disj. is dual) [0]0 → [ ]− 0 h h [1]0 → [ ]+ # h h [0]h → [ ]− 0 + h [1]h → [ ]− 1 + h If h represents a negation [0]0 → [ ]− 1 h h [1]0 → [ ]− 0 h h
    • Evaluating formulae (conclusions) The skin membrane transforms 1, 0 in yes, no [1]0 → [ ]− yes 0 0 [0]0 → [ ]− no 0 The formula φ is accepted iff it evaluates to 1 Evaluation is performed in linear time The P systems can be constructed (semi-uniformly) in polynomial time Thus the Boolean formula value problem is in PMCNAM
    • PMCNAM contains P. . . Let L ∈ P We describe a polynomially semi-uniform family Π of P systems with active membranes and no division operating in constant time and deciding L The TM M constructing Π, on input x: First decides if x ∈ L (we have the time to do that) Then constructs Πyes or Πno accordingly Πyes and Πno are trivial P systems which simply output yes or no respectively during their first computation step Thus L ∈ PMCNAM
    • . . . but also PMCNAM ⊆ P! This is the so-called Milano theorem: maximal parallelism is not enough; without division rules, P systems with active membranes operating in polynomial time can not solve “interesting” problems (unless P = NP) (We don’t discuss the proof here; we’ll prove a nondeterministic version later) Thus PMCNAM and P are the same
    • Boolean satisfiability problem Given a formula φ ∈ Φ with Φ → xi | (Φ ∧ Φ) | (Φ ∨ Φ) | ¬Φ . . . deciding whether φ has a satisfying assignment is NP-complete The usual nondeterministic algorithm is Guess a truth assignment v Evaluate φ under v and accept iff v |= φ We already know how to evaluate formulae via P systems
    • Generating a truth assignment Consider the (indexed) formula φ Inside the skin membrane 0 we put an object for each variable occurring in φ A pair of conflicting evolution rules for each variable x, choosing “true” or “false” [x → fx ]0 0 [x → tx ]0 0 Then generate one value-object for each occurrence i1 , . . . , ik of x in φ [fx → 0i1 · · · 0ik ]0 0 [tx → 1i1 · · · 1ik ]0 0
    • Moving the objects towards the leaves The indexed zeros and ones must be moved to the elementary membranes representing variables (e.g. 0h must be sent to membrane h) There is only one path in a tree If k is on the path 0 → h (and k = h) then 0h [ ]α → [0h ]α k k 1h [ ]α → [1h ]α k k α ∈ {0, +} When the value-object 0h (or 1h ) reaches h the subscript is deleted 0h [ ]0 → [0]0 h h 1h [ ]0 → [1]0 h h
    • Evaluation phase Now the problem is reduced to the previous one! Maybe not all value-objects reach their leaves simultaneously However, the new rules do not interfere with the old ones (the objects are different, the polarizations do not change)
    • Solving SAT (conclusions) The family of non-confluent P systems solving SAT can be constructed (semi-uniformly) in polynomial time O(n2 ) Each P system halts in O(n2 ) steps An accepting computation exists iff a satisfying assignment exists Thus SAT ∈ NPMCNAM
    • Simulating non-confluent P systems We proved NP ⊆ NPMCNAM Can we solve even harder problems efficiently by using this kind of P systems? It turns out the answer is no To prove that, we describe an efficient simulation of non-confluent divisionless P system by using a nondeterministic Turing machine
    • Data structures A membrane structure is represented as a tree Each membrane (node of the tree) has associated data: label, multiset, polarization Multisets are represented as vectors of nonnegative integers The developmental rules are represented as records with the appropriate fields
    • Simulation overview We maintain a copy of the current configuration C (membrane structure & multisets) of the simulated P system We also use an environment multiset (to collect the objects sent out from the skin) Finally let R be the set of rules of the P system Choose the rules from R nondeterministically and apply them, simulating maximal parallelism . . . until yes or no is found in the environment
    • Simulation algorithm (1) A1 If yes (no) is found, halt and accept (reject) A2 Remove from R any rule involving membranes not existing in C; set C ← C and R ← R A3 Until R is empty, pick a rule r ∈ R A4 If r = [a → w ]α and it can be applied, choose the h number k of a to rewrite into w , remove these occurrences from both C and C and add k times w to C; remove r from R A5 If r = [a]α → [ ]β b and it can be applied, remove h h a from both C and C , add b and change polarization in C; remove r from R together with any communication or division rule involving h A6,A7 . . . and so on (dissolution is deferred)
    • Simulation algorithm (2) A8 If parallelism is not maximal (useful objects remain) abort the simulation by rejecting A9 Dissolve all the membranes marked for dissolution (adjusting multisets and membrane structure) A10 Return to A1
    • Correctness and time complexity The only tricky part is ensuring that maximal parallelism is simulated correctly Any violation is due to object evolution rules But it is detected and handled in step A8 “Membrane rules” are always applied in a maximally parallel way Complexity analysis is boring; it suffices to say that the algorithm requires O(p(m, t)) time, i.e. polynomial time with respect to the size m of the P system and the number of steps t to simulate The polynomial is something like O(n3 t 2 ). . .
    • A non-confluent Milano theorem Let L ∈ NPMCNAM and L = L(Π) with Π constructed by M We define a NDTM N deciding L in polynomial time On input x, with |x| = n, construct Πx Simulate Πx and accept/reject accordingly Πx has size q(n) and runs for r (n) steps (for some polynomials q, r ) The total time is then O(p(q(n), r (n))), i.e. O(s(n)) for some polynomial s Then L ∈ NP
    • Conclusions We proved NPMCNAM = NP That is, semi-uniform families of non-confluent P systems with active membranes but without division solve exactly the problems in NP in polynomial time (The deterministic version of the simulation algorithm can be used to prove the original Milano theorem)
    • Open problems What happens when we allow the use of both non-confluence and division rules? (Conjecture: EXP or even NEXP) What about space complexity?
    • Bibliography (1) G. P˘un, a Computing with membranes: Attacking NP-complete problems, in: I. Antoniou, C. Calude, M. J. Dinneen (Eds.), Unconventional Models of Computation, UMC’2K, Proceedings of the Second International Conference, Brussel, Belgium, 13-16 December 2000, Springer, 2001, pp. 94–115. P. Sos´ ık, The computational power of cell division in P systems: Beating down parallel computers?, Natural Computing 2 (3) (2003) 287–298.
    • Bibliography (2) P. Sos´ A. Rodr´ ık, ıguez-Pat´n, o Membrane computing and complexity theory: A characterization of PSPACE, Journal of Computer and System Sciences 73 (1) (2007) 137–152. C. Zandron, C. Ferretti, G. Mauri, Solving NP-complete problems using P systems with active membranes, in: I. Antoniou, C. Calude, M. J. Dinneen (Eds.), Unconventional Models of Computation, UMC’2K, Proceedings of the Second International Conference, Brussel, Belgium, 13–16 December 2000, Springer, 2001, pp. 289–301.