Complexity Classes in Membrane Computing Fernando Sancho Caparrini Research Group on Natural Computing Dpt. Computer Science and Artificial Intelligence University of Seville, Spain
Goal Main Object of the talk: To define Complexity Classes in the framework of Membrane Computing and study the relationship with the classical classes. Ingredients: Model (Turing Machine, P systems,...) Mode (Deterministic, Non Deterministic, Sequential, Parallel,...) Measure (Time, Space, Descriptional Size,...) Upper bound (numerical function).
A fast introduction to Membrane Computing: P systems membrane elementary membrane 5 2 environment 1 3 7 8 6 4 1 skin 2 3 4 5 6 region membrane 7 8 Syntax: Π = (µ, Σ, m 1,..., m n, R) A membrane structure, µ, of membranes arranged in a hierarchical structure inside a main membrane and delimiting regions. (Multiset of) Objects of Σ in regions corresponding to chemical substances present in the compartments of a cell, m 1,..., m n. The objects evolve according to given evolution rules, R, associated with the regions.
membrane elementary membrane 2 5 environment 3 7 8 6 4 1 skin region membrane We will consider... One input membrane: i. Simple Rules: m 1 (ob 1, tar 1 )... (ob k, tar k )[δ], where tar i means some specific target where the object can go (the object can remain in the same membrane, moved to an inner membrane, or expelled out), the presence of δ means that the execution of the rule dissolves the membrane (the objects will belong to the father membrane). Priority between rules on the same region. The skin cannot be dissolved.
Semantic Configuration (µ, m 1,..., m k ): a membrane structure, and a family of multisets of objects associated with each region. Initial Configuration: (µ, m 1,..., m i m,..., m n ). Transitions between configurations, by applying the evolution rules, in a non deterministic, maximally and parallel manner. Computation: sequence of configurations from an initial configuration and using valid transitions. Halting computation: if the system reaches a configuration where no more rules can be applied. Result: something related with the multiset of a specific membrane (or the environment) in the final configuration of a halting computation.
One example
One more: computing squares
...and divisibility
Recognizer P systems A recognizer P system is a P system with external output such that: The alphabet contains two distinguished elements: YES, NO. All computations halt. If C is a computation of Π, then some YES or some NO (but not both) have been sent to the environment, and only in the last step of C. C is an accepting computation (resp. rejecting) if YES (resp. NO) appears in the environment associated to the corresponding halting configuration of C. In order to properly solve decision problems and capture the true algorithmic concept, we require a condition of confluence, that is, the system must always give the same answer.
Decision Problems Decision Problem: X = (I, Θ) such that I is a language over a finite alphabet. Θ is a total boolean function over I. There exists a natural correspondence between languages and decision problems. And a lot of problems that are not decision problems can be transformed into a roughly equivalent decision problem.
An example The Common Algorithmic Problem: given a finite set S and a family F of subsets of S, determine the cardinality of a maximal subset of S which does not include any set belonging to F. Decision version: given a finite set S, a family F of subsets of S, and a positive integer k, determine whether there is a subset A of S such that A k, and which does not include any set belonging to F.
Solving problems by a family of P systems with input: Polynomial encodings We will solve a decision problem through a family of P systems such that each element decides all the instances of equivalent size, in some sense. For example, in HPP problem, one P system decides all the graphs with the same number of vertices. In SAT, one P system decides about all formulae with the same number of variables. The same system can solve different instances of the problem, provided that the corresponding input multisets are introduced in the input membrane. In the input membrane we encode, in some way, the instance of the problem we try to decide about.
Let X = (I, Θ) a decision problem, and Π = (Π(n)) n N recognizer P systems. a family of A polynomial encoding of X in Π is a pair (cod, s) of polynomial-time computable functions such that s : I N and for each u I, cod(u) is an input multiset of Π(s(u)). u I X Answer of the problem cod polynomial encoding s? Π Answer of the P system cod(u) input (s(u))
Stability under polynomial time reductions: If r is a polynomial time reduction from X 1 to X 2, and (cod, s) is a polynomial encoding of X 2 in Π, then (cod r, s r) is a polynomial encoding of X 1 in Π.
Soundness... In order to assure that a family of recognizer P systems solves a decision problem, for each instance of the problem two main properties have to be proven: If there exists an accepting computation then the problem also answers yes (soundness). Tree computationn of Π(w) w Decision Problem X Θ X Yes Yes
... and Completeness If the problem answers yes then any computation is accepting (completeness). Tree computation of Π(w) Yes w Decision Problem X Θ X Yes Yes Yes Yes Yes
The complexity class PMC R Let R be the class of recognizer P systems with input. A decision problem, X = (I, Θ) is solvable in polynomial time by a family, Π = (Π(n)) n N, of R if: Π is polynomially uniform by Turing Machines; that is, there exists a deterministic Turing machine that constructs in polynomial time the device Π(n) from n N. There exists a polynomial encoding (cod, s) from X to Π such that: Π is polynomially bounded with regard to (cod, s): for each u I, every computation of Π(s(u)) with input cod(u) performs, at most, p( u ) steps (p is a polynomial). Π is sound regarding to (X, cod, s): for each u I, if there exists an accepting computation of Π(s(u)) with input cod(u), then Θ(u) = 1. Π is complete regarding to (X, cod, s): for each u I, if Θ(u) = 1, then every computation of Π(s(u)) with input cod(u) is an accepting one.
We denote this class by X PMC R, and it is closed under polynomial time reduction and under complement: X p Y X PMC Y PMC R and X PMC R R In order to solve a decision problem X, by a family Π = (Π(n)) n N of recognizer P systems: For each instance u of X: We construct cod(u) and Π(s(u)) in polynomial time (classical, sequential: precomputation time). We execute the system Π(s(u)) with input cod(u) (cellular, parallel: computation time). It would be very interesting to consider complexity classes in which the precomputation was developed within the membrane framework. The Satisfiability Problem can be solved in linear time by a family, R, of recognizer P systems with input, then NP PMC R.
The complexity class NPMC R We can introduce one more class considering acceptance in the usual non-deterministic way: Let R be the class of recognizer P systems with input. A decision problem, X = (I, Θ) is non-deterministically solvable in polynomial time by a family, Π = (Π(n)) n N, of R if: Π is polynomially uniform by Turing Machines. There exists a polynomial encoding (cod, s) from X to Π such that: Π is polynomially bounded regarding (cod, s): for each u I, the minimum length of the accepting computations of Π(s(u)) with input cod(u) is bounded by p( u ). Π is sound and complete regarding (X, cod, s) in the following sense: for each u I, there exists an accepting computation of Π(s(u)) with input cod(u) if and only if Θ(u) = 1.
The complexity class NPMC R We denote this class by X NPMC R, and it is closed under polynomial time reduction, but not necessarily closed under complement. The Satisfiability Problem can be solved in constant time by a family of recognizer P systems with input, then NP NPMC R.
Attacking P versus NP problem with recognizer P systems Determine whether every language accepted by some non-deterministic Turing Machine in polynomial time is also accepted by some deterministic Turing Machine in polynomial time. We consider deterministic Turing Machine as language decision devices. It is possible to associate with a Turing Machine a decision problem: Let TM a Turin machine with input alphabet Σ T M. The decision problem associated with TM is X T M = (I, Θ), where I = Σ T M, and for every w Σ T M, Θ(w) = 1 if and only if TM accepts w. Obviously, the decision problem X T M is solvable by the Turing Machine T M. We will say that a Turing Machine, TM, is simulated in polynomial time by a family of recognizer P systems, R, if X T M PMC R.
Characterizing P NP In P systems, evolution rules, communication rules and rules involving dissolution are called basic rules. By applying this kind of rules the size of the structure of membranes does not increase. Hence, it is not possible to construct an exponential working space in polynomial time using only basic rules. Proposition: Let TM be a deterministic Turing machine working in polynomial time. Then TM can be simulated in polynomial time by a family of recognizer P systems using only basic rules. Proposition: If a decision problem is in PMC R (using only basic rules), then there exists a Turing machine solving it in polynomial time. Also, from the proof of this result we obtain: P = PMC T, where T is the class of recognizer P systems using only basic rules.
Characterizing P NP Theorem: The following conditions are equivalent: 1. P NP 2. There exists an NP-complete decision problem unsolvable in polynomial time by a family of recognizer P systems using only basic rules. 3. Every NP-complete decision problem is unsolvable in polynomial time by a family of recognizer P systems using only basic rules.
One more step: P systems with active membranes One bio-inspired variant where we can divide membranes: Π = (Σ, H, µ, M 1,..., M p, R) 1. p 1, is the initial degree of the system; 2. Σ is an alphabet of symbol-objects; 3. H is a finite set of labels for membranes; 4. µ is a membrane structure; 5. M 1,..., M p : initial multisets. 6. R is a finite set of rules: (a) [ a ω ] α h (b) a [ ] α 1 h [ b ]α 2 h (c) [ a ] α 1 h b [ ]α 2 h (d) [ a ] α h b (e) [ a ] α 1 h [ b ]α 2 h [ c ]α 3 h where h H, α, α 1, α 2 {+,, 0}, a, b, c Σ, u Σ
P systems with active membranes Let us denote by AM the class of recognizer P systems with active membranes using 2-division: Without cooperation Without priority Without changing of labels With 3 polarizations With division rules
Some results... Knapsack, Subset Sum, Partition PMC AM SAT, Clique, Bin Packing, CAP PMC AM NP co-np PMC AM QBF (satisfiability of quantified propositional formulas) PMC AM PSPACE PMC AM
... and some questions... It is easy to obtain solutions to NP-complete problems through P systems with active membranes using 2-division for elementary membranes, without polarizations, without priorities, without label changing possibilities, but using cooperation (or trading cooperation by priority). Question 1: But, what happens if we don t allow cooperation also? Let AM this kind of recognizer P systems with active membranes. What is exactly the class PMC AM? Is it true P = PMC AM (P-conjecture)? Question 2: Is there a classical complexity class, C, such that C = PMC AM? Question 3: Given a classical complexity class, C, determine a (minimal) class of recognizer P systems, F, such that C = PMC F.
References Paun, G.: Membrane Computing. An introduction, Springer-Verlag, Berlin, 2002. Pérez-Jiménez, M.J.; Romero-Jiménez, A.; Sancho-Caparrini, F. Teoría de la Complejidad en modelos de Computación con Membranas, Ed. Kronos, Sevilla, 2002. Pérez-Jiménez, M.J.; Romero-Jiménez, A.; Sancho-Caparrini, F. Complexity Classes in Cellular Computing with membranes. Natural Computing, Kluwer Academic Publishers, vol. 2, num. 3(2003), 265-285. Pérez-Jiménez, M.J.; Romero-Jiménez, A.; Sancho-Caparrini, F. A polynomial complexity class in P systems using membrane division. Proceedings of the Fifth DCFS, 2003, 284 294. Pérez-Jiménez, M.J.; Romero-Jiménez, A.; Sancho-Caparrini, F. The P versus NP through computing with membranes. In Aspects of Molecular Computing, Lecture Notes in Computer Science, Springer-Verlag, Berlin, vol. 2950(2004), 338-352.... and thanks...