Spiking Neural P Systems with Neuron Division and Dissolution

Spiking neural P systems are a new candidate in spiking neural network models. By using neuron division and budding, such systems can generate/produce exponential working space in linear computational steps, thus provide a way to solve computational hard problems in feasible (linear or polynomial) time with a “time-space trade-off” strategy. In this work, a new mechanism called neuron dissolution is introduced, by which redundant neurons produced during the computation can be removed. As applications, uniform solutions to two NP-hard problems: SAT problem and Subset Sum problem are constructed in linear time, working in a deterministic way. The neuron dissolution strategy is used to eliminate invalid solutions, and all answers to these two problems are encoded as indices of output neurons. Our results improve the one obtained in Science China Information Sciences, 2011, 1596-1607 by Pan et al.


Introduction
Spiking neural P systems (in short, SN P systems) are a class of bio-inspired parallel computing models, initiated by Ionescu, Păun and Yokomori in 2006 [1], which are inspired from information processing strategy and communication strategy between neurons. A SN P system is constructed by a group of neurons (a class of cells with only one membrane) communicating by sending signals (spikes, represented by object a) to neighboring neurons through synapses. Each neuron has a certain number of spikes and rules. Spikes can evolve through application of rules. Since SN P systems were proposed, they become a rapid developing area of membrane computing [2][3][4][5][6][7][8][9][10][11][12][13][14][15].
Researchers pay close attention to computational efficiency of SN P systems, especially the judgement whether NP-complete problems have solutions or not in feasible time [16][17][18][19][20][21][22][23][24][25][26]. If a NP-complete problem has a solution, the output neuron outputs a spike; otherwise, the output neuron outputs nothing. However, we need to find out the solutions in many situations. For instance, the register allocation problem is an application of SAT problem. This problem aims to build a mapping relationship between the virtual registers and the physical registers, and realize the rational utilization of physical register resources. In this case, we need to judge whether a good solution exists, while searching the solution by distributing the physical register resources according to the solution. In applications, many problems can be transformed into graph coloring problems, which is equivalent to SAT problems. To solve these problems, exact solutions are also essential.
For this purpose, neuron dissolution, which is a basic biological phenomenon aiming to remove unnecessary neurons, is introduced into SN P systems [27,28], and a new class of SN P systems, SN P systems with neuron division and dissolution (DDSN P systems, for short) is proposed in this work. In DDSN P systems, division rules can generate exponent work space (in terms of neurons) which can be used to enumerate all possible results (one result is contained in one neuron), and dissolution rules can dissolve redundant neurons which can be used to remove wrong results. Neurons which represent all possible results are set as output neurons, and these output neurons with invalid results are dissolved in computational process. When the computation halts, the remaining output neurons show all right results. Uniform solutions to SAT problem and Subset Sum problem, which work in a deterministic way, are constructed as examples in this work.
The contributions of this work focus on the following three aspects. 1. The computational space efficiency is improved. If these redundant neurons are reserved, they will occupy huge computational resources such as storage. The dissolution rule can reduce the computational space needed and improve the computational space efficiency. 2. The system structure is clearer. If the redundant neurons are reserved, the SN P system will become complicated, and the useful neurons are not highlighted enough. By introducing the neuron dissolution mechanism, redundant neurons are dissolved immediately, and each of the remaining neuron has its function. 3. Exact solutions to NP-complete problems can be obtained in linear time. Invalid solutions are eliminated during the computational process by neuron dissolution, and all solutions are encoded as indices of specific output neurons at halting, which can provide more valuable information for applications. Uniform solutions to SAT and Subset Sum problems are solved as examples.
The paper is organized as follows. Section 1 defines the SN P systems with neuron division and dissolution. Uniform solutions to SAT and Subset Sum problems in linear time using the proposed SN P systems with neuron division and dissolution are presented in section 2 and section 3. Conclusions are given in section 4.

Background
Biological systems, such as cells, tissues, and human brains, have deep computational intelligence. Biologically inspired computing, or bio-inspired computing in short, focuses on regenerating computing architecture from biological systems to construct computing models and algorithms. Membrane computing is a novel research branch of bio-inspired computing, initiated by Gh. Păun in 2002, which seeks to discover new computational models from the study of biological cells, particularly of the biological membranes [29,30]. The obtained models are distributed and parallel bio-inspired computing devices, usually called P systems. There are three mainly investigated P systems, cell-like P systems, tissue P systems, and neural-like P systems (also known as spiking neural P systems). P systems, known as powerful computing models, are able to do what Turing machine can do, even solving computational hard problems [31][32][33][34][35][36][37].
SN P systems, as a new branch of membrane computing, are a shift from the cell-like architecture to the neural-like architecture. The topological structure of SN P systems is a directed graph: neurons are placed in the vertices of the graph, and synapses act as edges. Each neuron can have a certain number of objects a (spikes) and a certain number of firing rules and forgetting rules. Through a firing rule, a neuron can send information to other neurons by emitting spikes to these neurons. Through a forgetting rule, a certain amount of spikes can be removed from a neuron. Both the firing rules and the forgetting rules have conditions of applied. If the number of spikes in a neuron is contained within in the number set of spikes determined by a regular expression, a rule can have the possibility to be applied. At each time step, one rule is non-deterministically chosen to be applied in each neuron. That is to say, rules are applied in a sequential manner from the view of the neuron, and in parallel from the view of the whole system. Pan et al. introduced a novel idea to solve SAT problem in polynomial time by using neuron division and budding [25], which uses the neuron division and budding rules to generate more neurons according to the need in the computational process. Wang et al. proved that SN P systems with neuron division, not using neuron budding, can also solve SAT problem in polynomial time [26]. The biological motivation of neuron division and budding comes from the neural stem cells division. The neural stem cells have the ability to proliferate and differentiate into neurons, astrocytes and oligodendrocytes, therefore, they can supply massive tissue cells. In these SN P systems, neuron division rules and neuron budding rules are used to regenerate the above biological phenomena.
In neurons, there is another biological phenomenon called neuron apoptosis, which has a close relationship with neuron division and budding. Neuron apoptosis is a programmed neuron death controlled by a series of activities controlled by genes, such as the activation, expression and regulation of genes. It is not a self damage phenomenon under the pathological condition, but a actively death process. When unnecessary neurons or abnormal neurons occur in the process of neuron development or under the influence of some factors, neuron apoptosis can remove these neurons in multicellular organism to maintain a stable internal environment and to adapt to the environment better. It plays an important role in the evolution of the organism, the stability of internal environment and the development of multiple systems.
For the above biological phenomena, the neuron apoptosis mechanism is introduced into SN P systems, and neuron dissolution rule is designed. In this way, redundant neurons can be eliminated immediately.  • neuron dissolution rule [E] i ! δ, where, i 2 H, E is a regular expression over a, object δ represents that neuron σ i is dissolved;

System description
6. in, out H represent the input and output neurons of P, respectively.
The synapse dictionary syn shows the initial structure of the system and guides how to establish new synapses when new neurons are established.
If neuron σ i has h spikes, and a h 2 L(E), h ! c, the firing rule [E/a c ! a p ; d] i can be applied. c spikes are consumed (h − c spikes remain in neuron σ i .), and p spikes are emitted after d time units (steps). If d = 0, p spikes are emitted immediately; if d = 1, p spikes are emitted at the next step; if this firing rule is applied at step t and d ! 1, p spikes are emitted at step t + d. Neuron σ i is closed at steps t, t + 1, t + 2, . . ., t + d − 1, which means no rule will be applied and no spike will be received in this period. At step t + d, neuron σ i becomes open again, and can receive new spikes. Once these p spikes are emitted from neuron σ i , they reach each neuron σ j which has a synapse going from neuron σ i to neuron σ j and is open. The spikes sent to a closed neuron are lost.
If neuron σ i has h spikes, and a h 2 L(E), h ! s, the forgetting rule [E/a s ! λ] i can be applied. s spikes are consumed immediately.
If (1). neuron σ i has h spikes, and a h 2 L(E), and (2). no synapse (i, j), (j, i), (i, k), (k, i) exists in the system, the neuron division rule [E] i ! [ ] j || [ ] k can be applied. All h spikes in neuron σ i are consumed and neuron σ i is divided into two neurons σ j and σ k . No spike is in neurons σ j and σ k at this moment. The labels of the two generated neurons can be different or the same, and the labels of the two generated neurons can be different from or the same with the label of their father neuron σ i , too. The new generated neurons inherit the synapses of their father neuron σ i . That is to say, if there is a synapse (i, g) going from neuron σ i to neuron σ g , two synapses (j, g) and (k, g) are established after the division rule is applied; if there is a synapse (g, i) going from neuron σ g to neuron σ i , two synapses (g, j) and (g, k) are established after the division rule is applied. In addition to inheritance of synapses, new generated neurons also have synapses provided by the synapse dictionary syn. Synapses not existing in the synapse dictionary syn may appear because of inheritance of synapses. The condition (2) avoids the situation that the start and the end of a synapse are the same neuron. For example, if synapse (i, j) exists in the system, synapses (j, j), (k, j) will appear which is not permitted.
A simple example shown in Fig 1 is used to show how division rules are applied. One spike and two division rules are in neuron σ 3 . Considering the two conditions mentioned in the above paragraph, 1). Neuron σ 3 has one spike a and the regular expressions of both two division rules are exactly {a}, where a 2 {a}. Therefore, both of these two division rules meet the condition (1). 3 , the label 3 of the father neuron σ 3 corresponds to i in the normalization rule, and the label 2 and 3 of the two new neurons σ 2 and σ 3 corresponds to j and k in the normalization rule. Synapses (i, j), (j, i), (i, k), (k, i) cannot exist in the system. That is to say, (3, 2), (2, 3), (3, 3), (3, 3) cannot exist in this system. However, a synapse (2, 3) is in this system, therefore 4 meet the two conditions. The spike a in neuron σ 3 is consumed, neuron σ 3 is divided into two neurons σ 3 and σ 4 , and two synapses (2, 3), (2, 4) going from neuron σ 2 to these two new neurons are established because there is a synapse going from neuron σ 2 to the father neuron σ 3 of the two new neurons (the inheritance of synapses). Because rules in this system are related to the labels of neurons, the new neuron σ 3 contains these two rules. The system is changed to Fig 2 after 4 .

2). For rule [a] 3 ! [ ] 2 || [ ]
If neuron σ i has h spikes, and a h 2 L(E), the neuron dissolution rule [E] i ! δ can be applied. All h spikes in neuron σ i are consumed and neuron σ i is dissolved. All synapses going from/to neuron σ i are dissolved, too. At each step, if only one rule in neuron σ i can be applied, this rule must be applied; if two or more rules in neuron σ i can be applied, one of these rules is applied non-deterministically. Rules are applied in a sequential manner in each neuron and in parallel between neurons.
The configuration of the system is described by the synapses connections, the spikes number in each neuron, and the state of each neuron (open or closed). By applying rules, the  configuration is transformed from one to the next one. The transition sequence starting from the initial configuration is called a computation, and a computation halts if it reaches a configuration where all neurons are open and no rule can be applied.
SN P systems can used to solve the decision problem I X , Θ X both in a semi-uniform way and in a uniform way, where I X is a language over a finite alphabet and Θ X is a total boolean function over I X (The elements in I X are instances.). In the semi-uniform way, a specified SN P system is constructed for each instance of a decision problem, in which the instance parameters are embedded in the SN P system. In the uniform way, a SN P system is constructed for all instances of a decision problem, in which the different instances parameters enter the SN P system as input spikes. The uniform solutions are preferred because they only relate to the structure of a problem.
The input of a SN P system is a spike train a i 1 Á a i 2 Á ::: Á a i r , where r ! 1, i j ! 0 for each 1 j r, which means i j spikes enter the system through input neuron σ in at step j. Specially, i j = 0 means no spike enters the system at step j.

A Uniform Solution to SAT Problem
SAT (the satisfiability of conjunctive normal form expression) problem is one of the most typical NP-complete problems. For a Boolean variable set X = {x 1 , x 2 , . . ., x n }, a literal l i is x i or ¬x i for 1 i n. A clause C i is a disjunction of literals C i = l n 1 _ l n 2 _ . . . _ l n r , 1 r n. A conjunctive normal form (CNF, for short) is a conjunction of clauses C 1^C2^. . .^C m . An assignment is a mapping X ! {0, 1} from each variable x i to its value (Value 1 represents true and value 0 represents false.). For example, . The x 1 _ ¬x 2 and x 1 _ x 3 are the two clauses. The first clause contains two literals x 1 and ¬x 2 , and the second clause contains two literals x 1 and x 3 . If an assignment of x 1 , x 2 , . . ., x n can be found, which makes at least one literal true in each clause and then makes all m clauses true, this SAT problem is satisfiable. Otherwise, this SAT problem is unsatisfiable [38]. In the above example, let x 1 = x 2 = x 3 = 1, the value of the conjunctive normal form is (1 _ 0)^(1 _ 0) = 1^1 = 1. Therefore, the SAT problem is satisfiable.
The formal definition of SAT problem is as follows. Problem 1. NAME: SAT.
• QUESTION: is there an assignment of Boolean variables x 1 , x 2 , . . ., x n that can make the value of all clauses true?
SAT(n, m) denotes the set of all instances of the SAT problem having n variables and m clauses. In this section, a uniform solution working in a deterministic way is constructed by DDSN P system, which can solve all SAT(n, m) problems in linear time.
The instance parameters need to enter a SN P system, therefore the clauses need to be encoded as spikes form. Each clause contains either x j , or ¬x j , or none of these two. Different numbers of spikes are introduced into the system to distinguish these three situations.
In order to generate the necessary workspace before computing, a spike train (a 0 Á) 2n is introduced into the front of each spike train.
Computation starts when spike trains enter the system through input neurons σ in x1 , σ in x2 , . . ., σ in xn , respectively. Neuron σ 0 and its children neurons need 2n steps to generate 2 n neurons (workspace) to enumerate all assignments of variables by applying neuron division rules (One neuron represents one assignment of variables.), therefore (a 0 Á) 2n are added to the front of each spike train.
Generation At the same time, auxiliary neuron σ 2 has one spike, rule a ! a is applied and one spike is emitted to neuron σ 1 ; auxiliary neuron σ 3 has one spike, rule a ! a; 2n − 1 is applied and one spike will be emitted to neurons σ 2 and σ d at step 2n. The system after step one is shown in Fig 6. At step two, neuron σ 1 has one spike, the firing rule a ! a is applied, and one spike is emitted to neurons σ 2 , σ o 1 and σ o 0 .
At establish channels between the input and the assignments including x 1 = 0; synapses (Cx 2 1, o 11 ) and (Cx 2 1, o 01 ) establish channels between the input and the assignments including x 2 = 1; synapses (Cx 2 0, o 10 ) and (Cx 2 0, o 00 ) establish channels between the input and the assignments including x 2 = 0. At the same time, auxiliary neuron σ 2 has one spike, rule a ! a is applied and one spike is emitted to neuron σ 1 . The system after step three is shown in Fig 7. Similar process repeats. At step 2n − 1, 2 n neurons labeled o t 1 t2. . .tn (t 1 , t 2 , . . ., t n = 0, 1) are generated. The system after step 2n − 1 is shown in Fig 8. At step 2n, each neuron σ o t1 t 2 . . .t n receives one spike emitted from neuron σ 1 which will be deleted at the next step by the forgetting rule [a ! λ] o t1 t 2 . . .t n . Neuron σ 2 receives two spikes (One is emitted from neuron σ 1 , and another one is emitted from σ 3 ), the forgetting rule a 2 ! λ is applied at step 2n + 1, and no spike will be emitted to neuron σ 1 later. At the same time, neuron σ d receives one spike emitted from σ 3 . The system after step 2n is shown in Fig 9. Input Stage: At step 2n + 1, the first clause of the conjunctive normal form expression enters the system through input neurons σ in xi , i = 1, 2, . . ., n. The literal in regard to x 1 enters neuron σ in x1 ; the literal in regard to x 2 enters neuron σ in x2 ; . . . the literal in regard to x n enters neuron σ in xn . At the same time, one spike is emitted to neuron σ in xi from neuron σ d .
At step 2n + 2, the spikes in neuron σ in xi are replicated, and are emitted to neurons σ Cx i 1 and σ Cx i 0 .
At step 2n + 3, different rules are applied according to the number of spikes in neurons σ Cx i 1 and σ Cx i 0 .
For neuron σ Cx i 1 : • If one spike is in neuron σ Cx i 1 , which means neither x i nor ¬x i is in the clause, rule a ! a is applied. One spike is emitted to neurons having synapses going from neuron σ Cx i 1 to them. It aims to show that x i = 1 makes no contribution to let the clause true.
• If two spikes are in neuron σ Cx i 1 , which means x i is in the clause, rule a 2 ! λ is applied. These two spikes are deleted. It aims to show that x i = 1 makes contribution to let the clause true.
• If three spikes are in neuron σ Cx i 1 , which means ¬x i is in the clause, rule a 3 ! a is applied. One spike is emitted to neurons having synapses going from neuron σ Cx i 1 to them. It aims to show that x i = 1 makes no contribution to let the clause true.
For neuron σ Cx i 0 : • If one spike is in neuron σ Cx i 0 , which means neither x i nor ¬x i is in the clause, rule a ! a is applied. One spike is emitted to neurons having synapses going from neuron σ Cx i 0 to them. It aims to show that x i = 0 makes no contribution to let the clause true. Spiking Neural P Systems with Neuron Division and Dissolution • If two spikes are in neuron σ Cx i 0 , which means x i is in the clause, rule a 2 ! a is applied. One spike is emitted to neurons having synapses going from neuron σ Cx i 0 to them. It aims to show that x i = 0 makes no contribution to let the clause true.
• If three spikes are in neuron σ Cx i 0 , which means ¬x i is in the clause, rule a 3 ! λ is applied. These three spikes are deleted. It aims to show that x i = 0 makes contribution to let the clause true.
Satisfiability Stage: Each neuron σ o t1 t 2 . . .t n (t 1 , t 2 , . . ., t n = 0, 1) receives zero or more spikes at step 2n + 3. If one neuron σ o t1 t 2 . . .t n receives n spikes which means the clause contains n literals that make no contribution to let the clause true, the dissolution rule [a n ] o t1 t 2 . . .t n ! δ is applied at step 2n + 4 to dissolve this neuron (The value of the first clause is false, therefore this assignment is not the answer to this SAT problem.). Otherwise, at least one literal is true in this assignment and this assignment is reserved to check the next clause.
Due to m clauses are in a SAT problem, the satisfiability checking stage lasts for m + 3 steps. If some neurons σ o t1 t 2 . . .t n are still in the system at step 2n + m + 3, the labels of these neurons σ o t1 t 2 . . .t n are all solutions to this SAT problem, i.e., this SAT problem is satisfiable. Otherwise, this SAT problem is unsatisfiable. It can be seen that any SAT(n, m) problem can be solved in linear time, and all solutions can be obtained through this system. Some steps comparison results between our solution and other solutions, which use the neuron division to solve the NP-complete problems, are shown in Table 1.
Considering a SAT problem SAT (3,3): , the DDSN P system P 3,3 is used to solve it. After 12 computational steps, neurons σ o 111 , σ o 101 and σ o 011 are remaining which shows that {x 1 = true, x 2 = true, x 3 = true}, {x 1 = true, x 2 = false, x 3 = true} and {x 1 = false, x 2 = true, x 3 = true} are all solutions to this SAT problem. The SN P system with neuron division and budding and the SN P system with neuron division need 21 steps and 26 steps to judge this problem has solutions, respectively, while our DDSN P system need only 12 steps.
SAT problems with different sizes (1 n, m 50) are solved using the three systems in Table 1 and the computational steps of each system are shown in Figs 10, 11 and 12 by MATLAB R2014a. As can be seen from these figures, the computational steps of DDSN P system are stable and much fewer, especially when the problem size is larger.

A Uniform Solution to Subset Sum Problem
Subset Sum problem is one of the most typical NP-complete problems. The formal definition of it is as follows [38]. Problem 2. NAME: SUBSET SUM.
• INSTANCE: a set of positive integers X = {x 1 , x 2 , . . ., x n } and a positive integer S.
Subset Sum problem (n) denotes the set of all instances of the Subset Sum problem having n integers. In this section, a uniform solution working in a deterministic way is constructed by DDSN P system, which can solve all Subset Sum problem (n) problems in linear time.
An integer is represented by corresponding number of spikes. In order to generate necessary workspace before computing, a spike train (a 0 Á) 2n is introduced into the front of each spike train.  The formal definition of DDSN P Systems for Subset Sum problem (n) (shown in Fig 13) is as follows.
4. n 0 = 1, n 2 = 1, n 3 = 1, the number of spikes in other neurons is zero; . ., t n (i, t 1 , t 2 , . . ., t n = 0, 1); . .t n , t 1 , t 2 , . . ., t n = 0, 1 neuron division rule: Computation starts when spike trains enter the system thrgouth input neurons σ in 1 , σ in 2 , . . ., σ in n and σ s , respectively. Neuron σ 0 and its children neurons need 2n steps to generate 2 n neurons (workspace) to enumerate all subsets of x 1 , x 2 , . . ., x n by applying neuron division rules (One neuron represents one subset.), therefore (a 0 Á) 2n are added to the front of each spike train. and o 1 establishes a channel between the input and the subset having x 1 . At the same time, auxiliary neuron σ 2 has one spike, rule a ! a is applied and one spike is emitted to neuron σ 1 ; auxiliary neuron σ 3 has one spike, rulea ! a; 2n − 1 is applied and one spike will be emitted to neurons σ 2 at step 2n. The system after step one is shown in Fig 14. At step two, neuron σ 1 has one spike, the firing rule a ! a is applied, and one spike is emitted to neurons σ 2 , σ o 1 and σ o 0 .
At step 2n + 2, the firing rule a 3 (a 3 ) + /a 3 ! a 3 is applied, and three spikes are replicated and are emitted to neurons σ d i1 and σ d i2 . Spikes in neuron σ d i1 are forgotten, and spikes in neuron σ d i2 are emitted to these σ o t1 t 2 . . .,t n having synapses going from neuron σ d i2 to them (These neurons represent the subsets having the integer x i .) at step 2n + 3. This process repeats until only 3 spikes are in neuron σ in i . At step 2n + x i + 2, the firing rule a 3 ! a is applied, and one spike is replicated and is emitted to neurons σ d i1 and σ d i2 .
At step 2n + x i + 3, the spike in neuron σ d i1 is emitted to neuron σ 4 showing that all spikes in neuron σ in i have been passed to neurons σ o t1 t 2 . . .,t n having synapses going from neuron σ d i2 to them. The spike in neuron σ d i2 is forgotten. Up to this step, 3x i spikes are emitted to neurons σ o t1 t 2 . . .,t n which represent the subsets having the integer x i . When all input spikes in neurons σ in i are passed to neurons σ o t1 t 2 . . .t n at step 2n + x max + 3 (x max represents the maximum integer of all n integers.), neuron σ 4 receives n spikes, and one spike is emitted to neuron σ s at step 2n + x max + 4. Up to this step, the number of spikes in neurons σ o t1 t 2 . . .,t n is 3 Checking Stage: At step 2n + x max + 5, 2s + 1 spikes are in neuron σ s , the firing rule a(a 2 ) + / a 2 ! a 2 is applied, two spikes are emitted to neurons σ o t1 t 2 . . .t n . This process lasts for S circles.
At step 2n + x max + s + 4, only one spike is in neuron s, and this spike is emitted to neurons σ o t1 t 2 . . .t n .
There are three rule execution situations in neurons σ o t1 t 2 . . .t n .
1.  neuron σ S , then forgetting rule a 2 (a 3 ) + /a 5 ! λ can be applied with 5 spikes consumed. The number of spikes decreases to 3ð X b2B b À 1Þ. This process repeats S times, and all spikes in neuron σ o t1 t 2 . . .t n are consumed. At this step, the last one spike is emitted to this neuron from neuron σ S , forgetting rule a ! λ can be applied to consume this spike.
2.   number of spikes decreases to 3ð X b2B b À 1Þ. This process repeats S times, and 3ð X b2B b À SÞ spikes are remaining. At the next step, the last one spike in neuron σ S is emitted to this neuron, and dissolution rule [a(a 3 ) + ] o t1 t 2 . . .t n ! δ(t 1 t 2 . . .t n = 1, 2, . . ., n) is applied to dissolve this neuron.
If some neurons σ o t1 t 2 . . .t n are still in the system after step 2n + x max + s + 5, the labels of these neurons σ o t1 t 2 . . .t n are all solutions to this Subset Sum problem.
It can be seen that any Subset Sum problem (n) can be solved in linear time, and all solutions can be obtained through this system. Some steps comparison results between our solution and other solutions, which use the non-deterministic method to solve the NP-complete problems, are shown in Table 2, where, k means that all x 1 , . . ., x n , S can be transformed into k-bit binary numbers.  The conventional methods use the nondeterminism of SN P systems to solve Subset Sum problem, which means that whether a random combination of integers is one of the solutions or not can be checked by one computational process. These SN P systems can only judge whether a certain subset is the answer or not, but cannot search all solution space to judge whether a Subset Sum problem has solutions. Even if we let all combinations be traversed artificially to determine whether a Subset Sum problem has solutions or not, (2 n − 1)-times computations should be processed. Although the time complexity of each computation is a constant, the whole time complexity cannot be a polynomial of n. The proposed DDSN P system can solve the Subset Sum problem in a linear time, which improves the computational efficiency.
A series of Subset Sum problems: X = {1, 2, . . ., n}, S = 5 are solved using the five systems in Table 2 and the computational steps of these systems are shown in Fig 18 by MATLAB  R2014a. The computational steps of DDSN P system are much fewer, especially when the problem size is larger.

Conclusions
The new mechanism called neuron dissolution is introduced into the framework of SN P systems in this work. By this mechanism, redundant neurons can be dissolved immediately. The computational resources can be saved, which means more work can be done using the same resources, or the same work can be done using less resources. We also proved that this new variant of SN P system can obtain all solutions to NP-complete problems (Invalid solutions are eliminated by neuron dissolution.), such as SAT problem and the Subset Sum problem, in linear time, which enhances the application fields of SN P systems such as the register allocation problem.
This work provides a new thought of storing information in SN P systems, which can be used to store other information. The dissolution rule can be used to many situations to decrease the space complexity of a SN P system. This variant of SN P system can be used to solve other NP-complete problems and application problems. It is also an attractive direction to introduce other biological phenomena into SN P systems to reduce computational resources and enhance computational space efficiency.