scieee AI-readable full text Open interactive document viewer

Dynamic threshold neural P systems

Peng, Hong; Wang, Jun; Pérez Jiménez, Mario de Jesús; Riscos Núñez, Agustín

Abstract

Pulse coupled neural networks (PCNN, for short) are models abstracting the synchronization behavior observed experimentally for the cortical neurons in the visual cortex of a cat’s brain, and the intersecting cortical model is a simplified version of the PCNN model. Membrane computing (MC) is a kind computation paradigm abstracted from the structure and functioning of biological cells that provide models working in cell-like mode, neural-like mode and tissue-like mode. Inspired from intersecting cortical model, this paper proposes a new kind of neural-like P systems, called dynamic threshold neural P systems (for short, DTNP systems). DTNP systems can be represented as a directed graph, where nodes are dynamic threshold neurons while arcs denote synaptic connections of these neurons. DTNP systems provide a kind of parallel computing models, they have two data units (feeding input unit and dynamic threshold unit) and the neuron firing mechanism is implemented by using a dynamic threshold mechanism. The Turing universality of DTNP systems as number accepting/generating devices is established. In addition, an universal DTNP system having 109 neurons for computing functions is constructed.

Full text

Dynamic threshold neural P systems Hong Peng a, Jun Wang b, Mario J. Pérez-Jiménez c, Agustín Riscos-Núñez c a School of Computer and Software Engineering, Xihua University, Chengdu 610039, China b School of Electrical Engineering and Electronic Information, Xihua University, Chengdu 610039, China c Research Group of Natural Computing, Department of Computer Science and Artificial Intelligence, Universidad de Sevilla, Sevilla 41012, Spain Keywords: Membrane computing P systems Neural-like P systems Dynamic threshold neural P systems Universality a b s t r a c t Pulse coupled neural networks (PCNN, for short) are models abstracting the synchronization behavior observed experimentally for the cortical neurons in the visual cortex of a cat’s brain, and the intersecting cortical model is a simplified version of the PCNN model. Membrane computing (MC) is a kind computation paradigm abstracted from the structure and functioning of biological cells that provide models working in cell-like mode, neural-like mode and tissue-like mode. Inspired from intersecting cortical model, this paper proposes a new kind of neural-like P systems, called dynamic threshold neural P systems (for short, DTNP systems). DTNP systems can be represented as a directed graph, where nodes are dynamic threshold neurons while arcs denote synaptic connections of these neurons. DTNP systems provide a kind of parallel computing models, they have two data units (feeding input unit and dynamic threshold unit) and the neuron firing mechanism is implemented by using a dynamic threshold mechanism. The Turing universality of DTNP systems as number accepting/generating devices is established. In addition, an universal DTNP system having 109 neurons for computing functions is constructed. 1. Introduction Membrane Computing is a kind computation paradigm abstracted from the structure and functioning of biological cells. This paradigm provides models working in cell-like mode, based on the hierarchical structure of biological membranes in a cell, tissue-like mode, abstracted from the communication and cooperation of cells in biological tissues, and neural-like mode based on the way that neurons communicate with each other by means of short electrical impulses (spikes) but fired at precise moments of time. Spiking neural P systems (in short, SNP systems) [1] are a kind of neural-like P systems in membrane computing [2], abstracted from the way neurons work together to deal with and communicate information in a network form of neural cells linked by synapses [3,4]. A SNP system has a directed graph structure, in which the neurons denote the nodes and the arcs denote the synaptic connections between these neurons. There are two kinds of components in each neuron: a data unit that is used to store the number of spikes, and several rules (firing and/or forgetting rules). SNP systems have a working alphabet that is a singleton whose unique element ais called spike. A global clock is considered to mark the time of these systems, and all the neurons operate in parallel. SNP systems provide a class of parallel computing models. In the past years, many variants of SNP systems have been discussed, abstracted from a various of biological facts and/or combined the methods and ideas in computer sciences or mathematics. Considered a couple of anti-spikes (a,¯ a), SNP systems with antispikes were proposed in Pan et al. [5]. With the inspiration of astrocytes with excitatory and inhibitory influences, SNP systems with astrocytes were discussed in [6,7], respectively. In [8,9], SNP systems with rules on synapses have been discussed, in which rules were considered in synapses. At the same time, a competitive spike consumption strategy was discussed in Peng et al. [10]. By introducing weight and threshold mechanism, SNP systems with weights/thresholds have been investigated in [11,12], respectively. Inspired from the biological fact that the synapse has one or more chemical channels, Peng et al. [4] and Song et al. [13] investigated SNP systems with multiple channels. Considered a new communication strategy among neurons, Pan et al. [14] and Wu et al. [15] discussed SNP systems with communication on request. Motivated by the biological phenomena that each neuron has a charge either positive or negative, SNP systems with polarizations were discussed [16]. Under the restriction that at most one neuron can be applied at each time, Ibarra [17] and Zhang [18] discussed sequential SNP systems, respectively. In addition, Chen et al. [19] introduced axon P systems, in which nodes are organized in a linear structure. Due to the use of a global clock, a lot of SNP systems work synchronously, however, a number of asynchronous SNP systems were investigated [20,21]. In recent years, fuzzy logic has been integrated in SNP systems, called fuzzy SNP systems, such as, fuzzy reasoning SNP systems [22], weighted fuzzy SNP systems [23] and adaptive fuzzy SNP systems [24]. In addition, SNP systems have been applied to process a lot of real-world problems, for instance, fault diagnosis [25–28], image processing [29], data clustering [30–32] and combinatorial optimization problems [33]. The computational properties of SNP systems were investigated. Numerous variants of SNP systems, as number accepting/generating devices [1,6,20,21], language generating devices [34,35] and function computing device [36,37], have been proven to be Turing universal. SNP systems have been used to deal with some computationally hard problems in a linear or polynomial time [38,39]. Biological systems have always been an inspiration for developing algorithms. Cat’s and guinea pig’s visual cortexes have helped in developing some digital models. Eckhorn et al. [40,41] created mammal’s neuron model by investigating the synchronous oscillating phenomenon of neurons in cat’s visual cortex. Eckhorn’s neuron model has been used to develop pulse coupled neural networks [42]. In Eckhorn’s model, each neuron has three components (receptive field, nonlinear modulation and output module), and the receptive field consists of linking input and feeding input [43]. Kinser [44] proposed the intersecting cortical model (ICM) that is a modification of Eckhorn’s neuron model [45]. In ICM model, feeding input and nonlinear modulation mechanism in Eckhorn’s model are removed, and a dynamic threshold mechanism is introduced where the threshold can be changed according to the neurons’s firing. From the perspective of application, regularexpression-based firing mechanism in SNP systems maybe suffer from a limitation when they are directly used to solve real-world problems: it is only suitable to the kind of some applications related to regular language. Therefore, it becomes an interesting and challenging problem how to develop some extensions to break the limitation. Compared with spiking neuron used in SNP systems, the ICM model can provide a stronger control ability for behavior of neurons. This paper focuses on how to develop a new neurallike model based on the ICM model under membrane computing framework, which is different from the existing SNP system in the mechanism. This paper investigates a new variant of neural-like P systems, called dynamic threshold neural P systems (in short, DTNP systems), abstracted from the intersecting cortical model (for short, ICM model) that was derived from the synchronous oscillating phenomenon of neurons in cat’s visual cortex [40]. A DTNP system contains a number of dynamic threshold neurons, and each dynamic threshold neuron has two data units and dynamic threshold mechanism used to process the neuron’ firing. For convenience, we define DTNP systems by using the notations and terms as in SNP systems. The computational power of DTNP systems as number generating/accepting devices and function computing device is discussed. Specifically, DTNP systems as number generating/accepting devices which use an unbounded number of neurons and where each neuron has at most two rules, are Turing universal. Moreover, an universal DTNP system having 109 neurons for computing functions is established. From the point of view of working mechanism, the differences between DTNP systems and SNP systems can be summarized as follows: (1) SNP systems are inspired from a simplified model of spiking neurons, while DTNP systems use dynamic threshold neurons, abstract from ICM model of the cortical neurons. (2) SNP systems use a regular-expression-based firing mechanism, however, DTNP systems adopt a dynamic-threshold- based firing mechanism, which is often expressed by a conjunctive form. (3) Each dynamic threshold neuron in DTNP systems has two data units (feeding input unit and dynamic threshold unit), and maximum spike consumption strategy and nondeterministic rule selection strategy are used to deal with the neuron’s spiking. The motivation of this paper stays in introducing a new dynamic threshold neuron, inspired from ICM model of the cortical neurons, and proposing a new variant of neural-like P systems based on the dynamic threshold neuron, i.e., DTNP systems. In addition, SNP systems can suffer from a certain limitation in directly solving realworld problems because they use a regular-language-based firing condition, for example, image and signal processing problems. However, the limitation is relaxed in DTNP systems in a conjunctive form, and a firing mechanism with dynamic threshold is used to handle the firing of neurons. It is well-known that pulse coupled neural networks as an analog of DTNP systems have been successfully used to solve image and signal processing problems. Therefore, the new variant seems to be suitable for solving those realworld problems. However, this work mainly focuses on computational power of DTNP systems as number generating/accepting and function computing devices. The rest of this paper is organized as follows. The proposed DTNP systems are presented in Section 2. The universality of DTNP systems as number accepting/generating devices is proven in Section 3. The universality of DTNP systems as function computing device is investigated in Section 4. Section 5draws conclusions and discussion. 2. DTNP systems In this section, we describe in detail the proposed DTNP systems, which are inspired from the ICM model. For clarity and ease of understanding, we use notations and terms similar to those used in SNP systems. It is well known that in SNP systems, each neuron has a data unit (storing the number of spikes in the neuron) and some rules (characterizing the behavior of the system). However, ICM model has two kinds of data (feeding input and dynamic threshold) and a dynamic threshold mechanism where the threshold can be changed with the neurons’s firing. Therefore, when designing the DTNP systems, two integrants that are different from SNP systems are considered: (1) each dynamic threshold neuron has two data units: feeding input unit and dynamic threshold unit. (2) the neuron’s firing is based on a dynamic threshold mechanism instead of regular-expression-based or staticthreshold-based firing rules. As a result, the dynamic threshold mechanism can provides a stronger control ability for behavior of DTNP systems. 2.1. Definition Definition 1. A DTNP system with degree m≥1 is formulated as a tuple: Π=(O, σ1, . . . , σm,syn,in,out) where: (1) O= {a}is the singleton alphabet (ais called the spike); (2) σi=(ui, τi,Ri),1≤i≤m, are neurons with dynamic threshold, where: (a) ui≥0 is the number of spikes as feeding input via dendrites in σi; (b) τi≥0 is the (dynamic) threshold in σi; (c) Ridenotes the finite set of firing rules of the form Ei/(au,aτ)→ap, in which Ei= {ui≥τi∧ui≥u∧τi≥ τ}is a firing condition, u≥1, τ≥0, p≥0 and p≤u; In the case of p≥1, the rule is called a firing rule, and in the case of p=0, the rule is called a forgetting rule (a0is denoted by λ); (3) syn ⊆ {1, . . . , m} × {1, . . . , m}indicates a directed graph structure of synapses between neurons; note that (i,i)/∈ syn, 1 ≤i≤m; (4) in,out ∈ {σ1, . . . , σm}denote the input neuron and output neuron of Π, respectively. A DTNP system is regarded as a directed graph without selfloops (arcs from a node to itself), where the nodes of the graph are represented by neurons while the arcs denote synaptic connections between these neurons. A virtual node that represents the environment can be considered in this graph and there exist two distinguished neurons (the input neuron and the output neuron) that allow to the system communicate with its environment. Specifically, the output neuron provides an ‘‘outgoing arc’’ in such manner that each step that output neuron fires, a spike is transmitted into the environment of DTNP system. The input neuron provides an ‘‘ingoing arc’’ in such manner that a natural number ncan be encoded in the system when two spikes are imported in the input neuron during nsteps. Apart from directed graph structure, there are two integrants in a DTNP system: data and rules. Data is used to describe the state of each neuron, and the rules characterize the dynamic behavior of the system. Different from SNP systems, each neuron σiin DTNP systems has two data units: a feeding input unit, denoted by ui, and a dynamic threshold unit, denoted by τi, that is, ui(t) and τi(t) denote respectively the numbers of spikes in feeding input unit and dynamic threshold unit at time t. Assume Π=(O, σ1, . . . , σm,syn,in,out) is a DTNP system of degree m. A configuration Ctof Πat time tis denoted by a vector (u1(t), τ1(t), . . . , um(t), τm(t)), which is an instantaneous description of the system, in which for each 1 ≤i≤m,ui(t) indicates the number of spikes contained in feeding input unit of neuron σiat time tand τi(t) is the dynamic threshold of neuron σiat time t. The initial configuration of Πis (u1, τ1, . . . , um, τm), that is, ui(0) =ui and τi(0) =τi, for each 1 ≤i≤m. DTNP systems have the rules of two types: firing rules and forgetting rules. Each neuron σiis associated a finite set of (firing and/or forgetting) rules of the type Ei/(au,aτ)→ap. Note that the expression Ei= {ui≥τi∧ui≥u∧τi≥τ}can be omitted because it is injectively associated with σi. The semantics of the rules in DTNP systems can be illustrated as follows. The rule r≡Ei/(au,aτ)→apin neuron σiis applicable to a configuration Ctat time t≥0 of Πif ui(t)≥τi(t),ui(t)≥uand τi(t)≥τ. When rule r≡Ei/(au,aτ)→apis applicable to a configuration Ctwe say that neuron σiis enabled at time t. When rule Ei/(au,aτ)→apis applied to a configuration Ct, neuron σifires, consuming uspikes in feeding input unit and τspikes in dynamic threshold unit. Besides, if p≥1 then it generates pspikes that are transmitted to each postsynaptic neurons σjwhere (i,j)∈syn. Thus, by applying the rule Ei/(au,aτ)→apto a configuration Ct=(u1(t), τ1(t), . . . , um(t), τm(t)), we have {ui(t+1) =ui(t)−u+n, τi(t+1) =τi(t)−τ+p. Fig. 1. An example of DTNP systems. where ndenotes the number of spikes received from other neurons, and pdenotes the number of spikes generated by the neuron. Two rules r≡Ei/(au,aτ)→apand r′≡Ei/(au′,aτ′)→ap′ in neuron σican be applicable to a configuration Ct. In this case, only one of them will be applied to Ctaccording to the following criterion (maximum spike consumption strategy is adopted): if u> u′(resp. u<u′) then rule r(resp. rule r′) is chosen to apply (in particular, is possible to apply a forgetting rules instead of an applicable firing rule); if u=u′then one of them (ror r′) is nondeterministically selected. For a configuration Ct, if no rule of the system can be applied, we say that it is a halting configuration. If Ctis a non-halting configuration then we use Ct⇒ΠCt+1to denote one transition step from configuration Ctto configuration Ct+1. In a DTNP system, the rules are sequentially applied for each neuron, however, neurons function in parallel. DTNP systems can be considered working in generating mode or in accepting mode. In the case of DTNP systems as generating device, a spike train is associated with any computation C0⇒Π C1⇒Π. . . ⇒ΠCt⇒ΠCt+1. . . as follows: it is the binary sequence such that at position tis written 1 if the output neuron emits some spike at time t, otherwise a 0 is written. Let ST(Π) denote the collection of all spike trains (over all computations) of Π.ST(Π) can be associated with a set of numbers in several ways, in this paper, the computation result is considered as the number of steps between the first two consecutive spikes emitted to the environment. N2(Π) is used to express the set of numbers computed by Π, and N2DTNPn mdenotes the families of all sets N2(Π) computed by DTNP systems having at most mneurons and at most nrules in each neuron. As usual, parameter mor nis replaced with ∗if it is not bounded. In the case of generating mode, the role of the input neuron is irrelevant and it can be ignored. For the case of DTNP systems as accepting device, a distinguished neuron is regarded as the input neuron and two spikes are imported to the neuron during ksteps. Then, the number kis accepted if the computation halts. Nacc (Π) is used to express the set of numbers accepted by Πand Nacc DTNPn mdenotes the families of all sets Nacc (Π) accepted by DTNP systems having at most m neurons and at most nrules in each neuron. For accepting mode, the role of the output neuron is irrelevant and it can be ignored. In the following, DTNP systems as number accepting/generating devices are proved to be computationally complete (equivalent with Turing machines). 2.2. An illustrative example To understand the mechanism of DTNP systems, we here give an example working in generating mode that can generate the finite spike train. Let us suppose that Πis a DTNP system, consisting of four neurons σ1,σ2,σ3and out, shown in Fig. 1. Initially, neurons σ2,σ3 and out have no spike in their feeding input units, while neuron σ1 has three spikes in its feeding input unit, that is, u1(0) =3,u2(0) = 0,u3(0) =0,uout (0) =0. The initial thresholds of the four neurons are set: τ1(0) =2, τ2(0) =2, τ3(0) =2, τout (0) =1. Thus, C0=(3,2,0,2,0,2,0,1). At time 1, since u1(0) =3≥τ1(0) =2, rules (a3,a2)→a2 and (a2,a2)→a2can be applied. Nevertheless, rule (a3,a2)→a2 (with u=3, τ =p=2) will be applied in neuron σ1according to maximum spike consumption strategy, and then it sends two spikes to neurons σ2and σ3. Thus, u1(1) =0, τ1(1) =2, u2(1) = 2, τ2(1) =2, u3(1) =2, τ3(1) =2, uout (1) =0, τout (1) =1. Therefore, C1=(0,2,2,2,2,2,0,1). At time 2, since u3(1) =2≥τ3(1) =2, rule (a,a)→a and forgetting rule (a2, λ)→λcan be enabled, but, according to maximum spike consumption strategy, rule (a2, λ)→λwill be applied in neuron σ3, consuming only two spikes in feeding input unit of that neuron. With respect to neuron σ2, rules (a2,a2)→a2 (with u=τ=p=2) and (a2,a)→a(with u′=2, τ′=p′=1) can be applied because u2(1) ≥τ2(1), u2(1) ≥u,τ2(1) ≥τ,u2(1) ≥ u′,τ2(1) ≥τ′. Thus, one of them is selected non-deterministically, and two cases are considered as follows: (1) Case 1: rule (a2,a2)→a2is applied in neuron σ2at time 2. In this case, neuron σ2consumes two spikes in each of its two data units and sends two spikes to neuron out. Then, we have uout (2) =2, τout (2) =1. Thus, C2= (0,2,0,2,0,2,2,1). At time 3, since uout (2) ≥τout (2), rule (a,a)→ais enable and sends one spike into the environment. Then, we have uout (3) =1, τout (3) =1, and C3=(0,2,0,2,0,2,1,1). At time 4, since uout (3) ≥τout (3), rule (a,a)→ais applied again and sends the second spike into the environment. Then, we have uout (4) =0, τout (4) = 1 and no rule is applicable to any neuron. Thus, the generated spike train is ‘‘0011’’, and C4=(0,2,0,2,0,2,0,1). (2) Case 2: rule (a2,a)→a is applied in neuron σ2at time 2. In this case, neuron σ2consumes two spikes in its feeding input unit and transmits one spike into neuron out. Then, we have uout (2) =1, τout (2) =1. Thus, C2= (0,2,0,2,0,2,1,1). At time 3, with one spike in neuron out, rule (a,a)→ais applied to transmit one spike into the environment. Then, we have uout (3) =0, τout (3) =1 and no rule is applicable to any neuron. Thus, C3=(0,2,0,2,0,2,0,1). The system halts, and the generated spike train is ‘‘001’’. 3. Turing universality of DTNP systems as number-generating/ accepting device In this section, computational completeness of DTNP systems as number accepting/generating devices is discussed. The universality of DTNP systems is proven by simulating register machines. Specifically, we showed that DTNP systems can accept/generate all recursively enumerable sets of numbers, which is usually denoted by NRE. Let us recall that a register machine can be denoted by M= (m,H,l0,lh,I), in which mdenotes the number of registers; H denotes the set of instruction labels; Idenotes the set of instructions bijectively labeled by elements of H;l0∈Hindicates the starting label, while lh∈His the halting label and corresponds to instruction HALT. There are instructions of the following three forms in I: (1) li:(ADD(r),lj,lk), li∈H\ {lh},lj,lk∈H, 1 ≤r≤m(add 1 to register rand then go non-deterministically to one of the instructions with labels ljor lk). (2) li:(SUB(r),lj,lk), li∈H\ {lh},lj,lk∈H, 1 ≤r≤m(if register ris non-zero, then decrease the value of register r by one and go to the instruction with label lj; otherwise go to the instruction with label lk). (3) lh:HALT (halting instruction). It is worth pointing out that the following convention will be considered throughout this paper: when comparing or evaluating the computation power of both number accepting/generating devices, the number 0 is ignored; this is associated with a frequently made convention in automata and grammars theory, in which the empty string λis omitted when evaluating two language accepting/generating devices. 3.1. Turing universality of systems working in the generating mode For the generating mode, a register machine can compute a number n: Initially, all registers are set to be empty; starting from the instruction l0, the register machine continuously applies instructions in I; if it arrives the halting instruction, then the value contained in the first register is called as the number computed by register machines. It has been proven that the family NRE can be computed by register machines. We first give the universal result of DTNP systems as number generating device as follows. Theorem 1. N2DTNP2 ∗=NRE Proof. It is obvious that N2DTNP2 ∗⊆NRE due to the Turing- Church thesis and the universality of Turing machines. So it suffices to prove NRE ⊆N2DTNP2 ∗and we will use the characterization of the family NRE by means of register machines working in the generative mode. For this purpose, let M=(m,H,l0,lh,I) be a register machine. In general, suppose that all registers except for register 1 are empty, and that during the computation register 1 is never decreased. To simulate the register machine M, a DTNP system Πis constructed, including the modules of three types: an FIN module that provides the computation result, shown in Fig. 4, and SUB and ADD modules that are applied to simulate the SUB and ADD instructions, shown in Fig. 2 and Fig. 3 respectively. Assume that each register rof Mcorresponds to a neuron σrin Πthat has no rule. The number contained in register ris encoded: if register rcontains the number n≥0, then neuron σrstores 2n spikes in its feeding input unit. Each instruction lcorresponds to a neuron σl, and in modules we design some auxiliary neurons. Initially, neuron σl0contains two spikes in its feeding input unit, and all auxiliary neurons have no spike. Assume that each neuron contains a certain initial threshold: (i) each neuron that corresponds to an instruction has initial threshold a2; (ii) each register contains initial threshold a3; (iii) initial thresholds of other neurons are set to a,a2or a3. Since neuron σlihas two spikes, the system Πbegins to simulate the instruction li:(OP(r),lj,lk) (OP denotes operation ADD or operation SUB): starting from the activated neuron σli, the simulation deals with neuron σras indicated by OP, and then two spikes are introduced into one of neurons σljand σlk. Once neuron σlhis activated and the FIN module is executed, this indicates that the simulation of Mis completed. During the computation, output neuron σout applies its rules to send the spikes into the environment twice at times t1and t2respectively, and the interval t2−t1that is associated with the number contained in register 1, is considered as the computation result. Note that if any rule (au,aτ)→apin any module satisfies that τ=p, then the number of spikes in dynamic threshold units remains unchanged (as already explained in Section 2). To prove that the register machine Mcan be correctly simulated by the system Π, we will illustrate how do SUB and ADD modules simulate the SUB and ADD instructions respectively, and how the computation result is exported by the FIN module. (1) Module ADD (shown in Fig. 2) - simulating an ADD instruction li:(ADD(r),lj,lk). The DTNP system Πbegins from simulation of instruction l0, which is an ADD instruction. Suppose that at time t, an ADD Fig. 2. Module ADD (simulating li:(ADD(r),lj,lk)). instruction li:(ADD(r),lj,lk) is executed in M. Let us see how that instruction is simulated by the DTNP system constructed. Assume that Ct=(n1, τ1,n2, τ2, . . . , n8, τ8) is the configuration of module ADD at time t, which is associated to eight neurons σli, σc1, σc2, σc3, σc4, σc5, σljand σlk, respectively. Thus, Ct= (2,2,0,2,0,2,0,3,0,2,0,2,0,2,0,2). Since neuron σlihas received two spikes, its feeding input unit has two spikes, which is equal to the number of spikes in dynamic threshold unit. Therefore, rule (a2,a2)→a2is enabled and then two spikes are transmitted to neurons σci,1,σci,2and σr. The fact that neuron σrreceives two spikes means that register ris increased by 1. Thus, Ct+1= (0,2,2,2,2,2,0,3,0,2,0,2,0,2,0,2). At time t+1, with two spikes in neurons σci,1and σci,2, the rule (a2,a2)→a2is applied and each of them sends two spikes to neuron σci,3. Thus, neuron σci,3receives four spikes. Therefore, Ct+2=(0,2,0,2,0,2,4,3,0,2,0,2,0,2,0,2). At time t+2, with four spikes in neurons σci,3, two rules (a4,a2)→a2and (a4,a3)→a3can be applied to neuron σci,3. Since the two rules will consume the same number of spikes in feeding input unit, one of them is selected non-deterministically. Two cases are considered as follows: (i) At time t+2, if rule (a4,a3)→a3is applied, neuron σci,3 sends three spikes to neurons σci,4and σci,5, respectively. Thus, Ct+3=(0,2,0,2,0,2,0,3,3,2,3,2,0,2,0,2). At time t+3, with three spikes in σci,4, rule (a3,a2)→a2is applied, then two spikes are sent to neuron σlj. Thus, neuron σljreceives two spikes, meaning that system Πbegins to simulate the instruction ljof M. At the same time, since rule (a3,a)→ain neuron σci,5can be applied, and it transmits one spike to neuron σlk. But the spike in neuron σlkwill be removed by rule (a, λ)→λin neuron σlk. Therefore, Ct+4=(0,2,0,2,0,2,0,3,0,2,0,2,2,2,0,2). (ii) At time t+2, if rule (a4,a2)→a2is applied, neuron σci,3 transmits two spikes to neurons σci,4and σci,5, respectively. Thus, Ct+3=(0,2,0,2,0,2,0,3,2,2,2,2,0,2,0,2). At time t+3, with two spikes in σci,4, rule (a2,a)→ais enabled and one spike is transmitted to neuron σlj, but the spike will be consumed by rule (a, λ)→λin neuron σlj. At the same time t+3, with two spikes in σci,5, rule (a2,a2)→a2is applied, then two spikes are transmitted to neuron σlk, and with two spikes in neuron σlk, the system Π Fig. 3. Module SUB (simulating li:(SUB(r),lj,lk)). begins to simulate the instruction lkof M. Therefore, Ct+4= (0,2,0,2,0,2,0,3,0,2,0,2,0,2,2,2). Consequently, ADD instruction can correctly simulated by ADD module: from neuron σlireceiving two spikes, the number of spikes in neuron σris increased by two, and one of neurons σljand σlkis selected non-deterministically. (2) Module SUB (shown in Fig. 3) - simulating a SUB instruction li:(SUB(r),lj,lk). Assume that in the register machine Ma SUB instruction li: (SUB(r),lj,lk) is executed at time t. Let us see how that instruction is simulated by the DTPN system constructed. Assume that C′ t= (n1, τ1,n2, τ2, . . . , n9, τ9) is the configuration of module SUB at time t, which is associated to eight neurons σli, σc1, σc2, σc3, σr, σc4, σc5, σljand σlk, respectively. Thus, C′ t=(2,2,0,1,0,1,0,1, 2n,3,0,2,0,2,0,2,0,2). Since neuron σlireceives two spikes at time t, rule (a2,a)→ais enabled, and it transmits one spike to neurons σci,1,σci,2and σci,3. Therefore, C′ t+1=(0,2,1,1,1,1,1,1, 2n,3,0,2,0,2,0,2,0,2). At time t+1, each of neurons σci,1,σci,2 and σci,3transmits one spike to neuron σrby rule (a,a)→a. Neuron σrreceives three spikes. Thus, C′ t+2=(0,2,0,1,0,1,0,1, 2n+3,3,0,2,0,2,0,2,0,2). According to the number of spikes in σr, two cases are considered as follows: (i) If at time tthe contents of register rin Mis n>0 then at time t+2, neuron σrcontains has 2n+3 spikes (in this case, 2n+3≥5). Then, rule (a5,a3)→a3will be applied in neuron σr, so three spikes are sent to neurons σci,4and σci,5respectively. Thus, C′ t+3=(0,2,0,1,0,1,0,1,2n− 2,3,3,2,3,2,0,2,0,2). At time t+3, with three spikes in σci,4, rule (a3,a2)→a2is applied, and then two spikes are transmitted to neuron σlj. Therefore, neuron σljreceives two spikes, meaning that the system Πbegins to simulate the instruction ljof M. At the same time, since rule (a3,a)→ain neuron σci,5can be applied, it transmits one spike to neuron σlk. However, this spike will be consumed by rule (a, λ)→λ at time t+4. Therefore, C′ t+4=(0,2,0,1,0,1,0,1,2n− 2,3,0,2,0,2,2,2,0,2). (ii) If at time tthe contents of register rin Mis 0 then at time t+2, neuron σrcontains has 3 spikes. Then only rule (a3,a2)→a2is applicable in neuron σr. When applying such a rule, two spikes are transmitted to neurons σci,4and Fig. 4. Module FIN (ending the computation). σci,5, respectively. Thus, C′ t+3=(0,2,0,1,0,1,0,1,0,3, 2,2,2,2,0,2,0,2). At time t+3, with two spikes in σci,4, rule (a2,a)→ais enabled and one spike is transmitted to neuron σlj, but the spike will be removed by rule (a, λ)→λin neuron σlj, at the next step. Moreover, with two spikes in σci,5, rule (a2,a2)→a2is applied, and then two spikes are sent to neuron σlk. Thus, C′ t+4= (0,2,0,1,0,1,0,1,0,3,0,2,0,2,0,2,2,2). Moreover, neuron σlkreceives two spikes. Since neuron σlkhas two spikes, the system Πbegins to simulate the instruction lk. Consequently, SUB instruction can be correctly simulated by the SUB module: the system begins with two spikes in neuron σli, and ends with σljreceiving two spikes (if the number contained in register ris greater than 0) or with σlkreceiving two spikes (if the number contained in register ris 0). (3) Module FIN (shown in Fig. 4) - outputting the result of computation. Let C′′ t=(n1, τ1,n2, τ2,n3, τ3) be the configuration of module FIN at time t, which is associated to three neurons σli, σ1and σout , respectively. Suppose that at time tthe computation in Mhalts and the result is n>0, i.e., the halting instruction lharrives and register 1 has natural number n. Then, at that time t, neuron σlh receives two spikes and neuron σ1contains 2nspikes. Thus, C′′ t= (2,2,2n,1,0,1). Since neuron σlhhas two spikes, rule (a2,a)→a is enabled and one spike is transmitted to neurons σ1and σout . Simultaneously, in neuron σ1rule (a2, λ)→λis applied. Thus, at configuration C′′ t+1, neuron σ1contains 2n−1 spikes and neuron σout contains one spike, i.e., C′′ t+1=(0,2,2n−1,1,1,1). Now, two cases are considered. If n=1 then in neuron σ1rule (a,a)→ais applied and in neuron σout rule (a,a)→ais applied. Thus, C′′ t+2=(0,2,0,1,1,1). Consequently, at configuration C′′ t+2 neuron σ1contains no spikes, neuron σout contains one spike and one spike has been transmitted to the environment. Then in neuron σ1no rule is applied and in neuron σout rule (a,a)→ais applied. C′′ t+3=(0,2,0,1,0,1). Therefore, at configuration C′′ t+3neurons σ1and σout contain no spikes, and one spike has been transmitted to the environment. Hence, in the case n=1 the DTNP system halts and the result is (t+3) −(t+2) =1. If n>1 then in neuron σ1rule (a2, λ)→λis applied and in neuron σout rule (a,a)→ais applied. C′′ t+2=(0,2,2n− 2,1,1,1). Consequently, at configuration C′′ t+2neuron σ1contains 2n−3 spikes, neuron σout contains no spike and one spike has been transmitted to the environment. Then, in neuron σ1rule (a2, λ)→λis applied and in neuron σout no rule is applied. C′′ t+3=(0,2,2n−3,1,1,1). Therefore, at configuration C′′ t+3 neuron σ1contains 2n−5 spikes and neuron σout contains no spike. Repeating the reasoning, at configuration C′′ t+n=(0,2,1,1,0,1) neuron σ1contains one spike and neuron σout contains no spike, at configuration C′′ t+n+1=(0,2,0,1,1,1) neuron σ1contains no spike and neuron σout contains one spike. At configuration C′′ t+n+2=(0,2,0,1,0,1) neurons σ1and σout contain no spikes, one spike has been transmitted to the environment, and the system Fig. 5. The INPUT Module of Π′. halts. Hence, in the case n>1, the result of the system is n= (t+n+2) −(t+2), which is exactly the number contained in register 1 while the computation of Mhalts. Based on the above analysis, it can be found that the register machine as number generating device is correctly simulated by DTNP system, in which each neuron has at most two rules. Therefore, the theorem holds. □ 3.2. Turing universality of systems working in the accepting mode In the following, we prove the universal result of DTNP systems as number accepting device. Theorem 2. Nacc DTNP2 ∗=NRE Proof. A DTNP system Π′is constructed to simulate a deterministic register machine that works in accepting mode, M= (m,H,l0,lh,I). The proof of Theorem 1 is modified to illustrate the following proof. The DTNP system Π′contains an SUB module, a deterministic ADD module and an INPUT module. Initially, no spike is contained in any of the auxiliary neurons. For initial thresholds in neurons, the same setting in the proof of Theorem 1 is used. The INPUT module is shown in Fig. 5. Neuron σin is used to read spike train 10n−11 from the environment. Note that the interval between the two spikes in the spike train, n=(n+1)−1, indicates the number accepted by the system. Suppose that at time t, the first spike is imported into neuron σin from the environment. With one spike in neuron σin, one spike is transmitted into neurons σc1,σc2and σc3by rule (a,a)→a. At time t+1, neurons σc2and σc3each transmits one spike to neuron σ1. Thus, neuron σ1receives two spikes. Note that with only one spike in neuron σc1, rule (a2,a2)→a2cannot be applied. From time t+1, until the second spike entering neurons σin, one spike is transmitted into neuron σ1by neurons σc2and σc3 respectively. For neuron σ1, since 2nspikes are received in total from time t+2 to time t+n+1, this indicates that the number contained in register 1 is n. At time t+n+1, σin receives the second spike, and then it fires to transmit one spike to neurons σc1, neurons σc2and σc3. At time t+n+2, since neuron σc1receives one spike, it has two spikes, thus, rule (a2,a2)→a2is applied to transmits two spikes to neuron σl0. Since neuron σl0has two spikes, the system will be activated to simulate the instruction l0. Since the register machine is used as number accepting device, the deterministic ADD instructions, li:(ADD(r),lj), are considered, shown in Fig. 6. With two spikes in neuron σli, rule (a2,a2)→ a2is enabled to transmit two spikes to neurons σljand σr. Since neuron σljreceives two spikes, the system begins to simulate the instruction lj. Fig. 6. Module ADD of Π′(simulating li:(ADD(r),lj)). Fig. 7. A universal register machine for computing functions [8]. We use module SUB in Fig. 3 to simulate the SUB instructions li: (SUB(r),lj,lk)), which has been described in the proof of Theorem 1. Module FIN is omitted, but neuron σlhis remained in the DTSN system. When neuron σlhreceives two spikes, this indicates that register machine Marrives the halting instruction lhand halts. According to the above analysis, it can be found that the register machine as number accepting device is correctly simulated by DTNP system, in which each neuron has at most two rules. Therefore, the theorem holds. □ 4. Turing universality of DTNP systems for computing functions In this section, universality of DTNP systems for computing functions will be discussed. A register machine used to compute a function f:Nk→N,M=(m,H,l0,lh,I), is described as follows. Initially, let all registers be empty, and karguments in the first k registers are introduced into the register machine. The register machine starts from instruction l0, and then it runs continuously until the halting instruction lharrives. As a result, the number contained in another special register rtis considered to be computation result, i.e., value of function f. A fixed admissible enumeration of the unary partial recursive functions can be denoted by (ϕ0, ϕ1, . . .). Generally, a register machine is called universal if only if a recursive function gexists so that ϕx(y)=Mu(g(x),y) for ∀x,y∈N. Fig. 7 gives a register machine Mu=(9,H,l0,lh,I) consisting of 9 registers (labeled from 0 to 8), a HALT instruction and 25 instructions (14 SUB and 10 ADD instructions) [8]. Note that register machine Muis a modified version of the register machine provided in [46], where it adds a new register 8, while original halting instruction is replaced by three instructions: l22 : (SUB(0),l23,lh);l23 :(ADD(8),l22);lh:HALT. In [46], the original Fig. 8. Module INPUT. register machine has been proven to be universal for computing functions. Moreover, the modified register machine has been widely used to investigate the universality of SNP systems and variants for computing functions. In this work, register machine Muwill be simulated by constructing a DTNP system. Theorem 3. There is an universal DTNP system containing 109 neurons as function computing devices. Proof. To simulate universal register machine Mu, a DTNP system Π′′ is constructed, which consists of an OUTPUT module, an INPUT module, and ADD and SUB modules. The OUTPUT module is used to export final result, and a spike train is read from the environment by the INPUT module. The ADD instructions of Muis simulated by the ADD modules, while the SUB instructions is simulated by the SUB modules. For each register rin Mu, there is a neuron σr, and we assume that neuron σrhas 2nspikes in its feeding input unit if register rcontains the number n≥0. In addition, each instruction licorresponds to a neuron σli. When neuron σlireceives two spikes, this means that the instruction liwill be simulated. If neuron σlhhas two spikes, this indicates that Π′′ completes the simulation of Mu. Initially, all neurons are assumed to be empty. The INPUT module is provided in Fig. 8, which is used to read the spike train 10g(x)10y1 from the environment, where neuron σ1 receives 2g(x) spikes and 2yspikes are stored in neuron σ2. The INPUT module can be described as follows. At the beginning, the first spike is imported into neuron σin from the environment. Neuron σin uses rule (a,a)→ato send one spike into neurons σc1,σc2and σc3. Since neurons σc1and σc2have one spike respectively, rule (a,a)→ais enabled in the two neurons. At each step from this time until the second spike is read into neurons σc1 and σc2, the two neurons send one spike to each other, and they together send two spikes each to neurons σc4and σc5. At each step, neuron σc4uses the rule (a2,a2)→a2to send two spikes to neuron σ1; however, two spikes contained in σc5will be removed by rule (a2, λ)→λ. Note that neuron σin receives the second spike after g(x) steps. Therefore, g(x) spikes are placed in σ1. When the second spike enters both neurons σc1and σc2, they have two spikes in their feeding input units. Thus, rule (a2,a2)→ a2in neurons σc1and σc2can be applied respectively. As the result, neurons σc1and σc2send two spikes to each other, and they together send four spikes to neurons σc4and σc5. In neuron σc4, the received four spikes are removed by rule (a4, λ)→λ. At each step, Fig. 9. Module OUPUT. Table 1 The comparison of different computing models in the term of small number of computing units. Computing models The number of neurons DTPN systems 109 SNQ P systems with one type of spike [15] 181 SNQ P systems with two types of spikes [14] 49 SNP systems [36] 84 Recurrent neural networks [47] 886 neuron σc5uses rule (a4,a2)→a2to send two spikes to neuron σ2. Therefore, neuron σ2had 2yspikes once neurons σc1and σc2 receive the third spike. Note that during neuron σc3receives the first two spikes, no rule in the neuron can be enabled. However, once it receives the third spike, neuron σc3fires by rule (a3,a2)→a2and sends two spikes to neuron σl0. Since neuron σl0contains two spikes, the system begins to simulate instruction l0of M′ u. From Fig. 7, it can be found that all ADD instructions are with the form li:(ADD(r),lj). Therefore, a deterministic ADD module, shown in Fig. 6, is used to simulate the ADD instruction. For the ADD module, its work mechanism has been illustrated in the proof of Theorem 2. We use the SUB module in Fig. 3 to simulate the SUB instruction li:(SUB(r),lj,lk). The work mechanism of the SUB module has been illustrated in the proof of Theorem 1. Suppose that the computation in Muhalts now, meaning that instruction lhreaches. The result of the computation is stored in register 8, and during the computation the result is never decremented. The OUTPUT module is used to export the computation result, as shown in Fig. 9. Suppose that at step tneuron σlhreceives two spikes, and neuron σ8has 2nspikes, where n>0. Rule (a2,a)→ain neuron σlhis enabled, and then it transmits one spike to neuron σ8. Since one spike is transmitted to neuron σ8at step t+1, the number of spikes stored in its feeding input unit becomes odd, hence one spike is transmitted to the environment via rule (a2,a)→a. From step t+1 to step t+n+1, rule (a2,a)→ais constantly applied to send one spike to the environment. Since only one spike is remained in neuron σ8at step t+n+2, the spike is removed by applying rule (a, λ)→λ. As a result, nspikes are emitted to the environment, which is exactly the number contained in register 8 of Muwhen the system halts. For DTNP system Π′′, we use a total of 109 neurons, including (i) 5 neurons for the INPUT module, (ii) 70 neurons for 14 SUB instructions, (iii) 25 neurons for 25 instructions, and (iv) 9 neurons for 9 registers. According to above analysis to the modules in system Π′′, it is obviously indicated that system Π′′ can correctly simulate register machine Mu.□ Theorem 3 gives a small number of computing units (i.e., neurons) for DTNP systems as function computing devices to achieve universality. To further evaluate computational power of DTNP systems, Table 1 provides the comparison result of the proposed variant with other computing models in the term of small number of computing units. It can be observed from Table 1 that recurrent neural networks [47] and SNQ P systems with one type of spike [15] need 886 and 161 respectively to achieve Turing universality for computing function. However, DTPN systems need fewer neurons to achieve Turing universality for computing function. Although SNQ P systems with two types of spikes [14] need 49 neurons that are less than that of DTNP systems, they have two types of spikes. However, DTNP systems have only one type of spike. SNP systems [36] need only 84 neurons to achieve Turing universality for computing function, however, DTNP systems need more neurons. The comparison indicates that dynamic threshold mechanism has an influence on the computing capability of DTNP systems. 5. Conclusions In this paper, inspired from intersecting cortical model (ICM), a new kind of neural-like P systems, dynamic threshold neural P systems (in short, DTNP systems) was presented. DTNP systems have a directed graph structure and are a kind of parallel computing systems. Computational completeness of DTNP systems working as the number generating/accepting devices was established by simulating register machines. Moreover, we constructed an universal DTNP system for computing Turing computable functions. It is surprising that SNP systems have been proved to be computationally universal despite its inspiration from a simple model of spiking neuron. Unfortunately, successful examples of direct application of SNP systems to solve real-world problems are rarely addressed. From the semantics of SNP systems, regular-expression- type firing mechanism maybe restrict their application in realworld problems. Usually, some nonnative mechanisms need to be introduced in SNP systems in order to overcome the limitation, for example, fuzzy logic [22–28]. Main motivation behind this work is to propose a new variant of neural-like P systems based on dynamic threshold neurons that are inspired from the intersecting cortical model. However, this paper mainly focuses on the construction of the variant and establishing its Turing universality results as the number generating/accepting and function computing devices. Our a further work is considered as follows. It is well-known that the intersecting cortical model was used to develop pulse coupled neural networks (PCNNs), which have been successfully applied to process many image processing problems. Note that DTNP systems also are inspired from intersecting cortical model, so they are analogous to PCNNs, however, they are different from PCNNs in some mechanism aspects. Maybe, DTNP systems become an alternative model for solving these realworld problems. As a new line of research, we will propose to study the computational efficiency of DTNP systems by introducing concepts of computational complexity theory. Additionally, other interesting questions concerning to DTNP systems can be further investigated, for instance, the universality as language generating devices, asynchronous and sequential working modes, and so on. Acknowledgments The authors thank the anonymous reviewers for providing very insightful and constructive suggestions, which have greatly help improve the presentation of this paper. This work was partially supported by the National Natural Science Foundation of China (No. 61472328), Research Fund of Table A.2 Acronyms and notations used in this paper. PCNN Pulse coupled neural networks. ICM Intersecting cortical model. SNP systems Spiking neural P systems. DTNP systems Dynamic threshold neural P systems. NRE All recursively enumerable sets of numbers. ΠA DTNP system. N2(Π) The set of numbers computed by Π. N2DTNPn mThe families of all sets computed by DTNP systems having at most mneurons and at most nrules in each neuron. Nacc (Π) The set of numbers accepted by Π. Nacc DTNPn mThe families of all sets accepted by DTNP systems having at most mneurons and at most nrules in each neuron. OThe singleton alphabet. aThe spike. σiThe ith neuron in a DTNP system or a module. uiThe number of spikes as feeding input via dendrites in σi. τiThe (dynamic) threshold in neuron σi. RiThe finite set of firing rules in neuron σi. EiThe firing condition. λThe empty object. syn The directed graph structure of synapses between neurons. in The input neuron. out The output neuron. C0Initial configuration. CtThe configuration at step t. ST(Π) The collection of all spike trains of Π. M,MuA register machine. mThe number of registers. rA register. HThe set of instruction labels. IThe set of instructions bijectively labeled by elements of H. l0The starting label. lhThe halting label. liThe ith instruction. HALT The halting instruction. ADD Add instruction or module. SUB Subtraction instruction or module. FIN The output module. INPUT The input module. Sichuan Science and Technology Project (No. 2018JY0083), Chunhui Project Foundation of the Education Department of China (Nos. Z2016143 and Z2016148), and Research Foundation of the Education Department of Sichuan province (No. 17TD0034), China. Appendix. Nomenclature The acronyms and notations used in this paper are provided in Table A.2. References [1] M. Ionescu, Gh. Păun, T. Yokomori, Spiking neural P systems, Fund. Inform. 71 (2006) 279–308. [2] Gh. Păun, Computing with membranes, J. Comput. Syst. Sci. 61 (1) (2000) 108– 143. [3] Gh. Pˇ aun, G. Rozenberg, A. Salomaa, The Oxford Handbook of Membrance Computing, Oxford University Press, New York, 2010. [4] H. Peng, J. Yang, J. Wang, T. Wang, Z. Sun, X. Song, X. Luo, X. Huang, Spiking neural P systems with multiple channels, Neural Netw. 95 (2017) 66–71. [5] L. Pan, Gh. Păun, Spiking neural P systems with anti-spikes, Int. J. Comput. Commun. Control IV (3) (2009) 273–282. [6] Gh. Păun, Spiking neural P systems with astrocyte-like control, J. UCS 13 (11) (2007) 1707–1721. [7] L. Pan, J. Wang, H.J. Hoogeboom, Spiking neural P systems with astrocytes, Neural Comput. 24 (3) (2012) 805–825. [8] T. Song, L. Pan, Gh. Păun, Spiking neural P systems with rules on synapses, Theoret. Comput. Sci. 529 (2014) 82–95. [9] T. Song, L. Pan, Spiking neural P systems with rules on synapses working in maximum spiking strategy, IEEE Transaction on Nanobioscience 14 (4) (2015) 465–477. [10] H. Peng, R. Chen, J. Wang, X. Song, T. Wang, F. Yang, Z. Sun, Competitive Spiking Neural P Systems with Rules on Synapses, IEEE Trans. NanoBiosci. 16 (8) (2018) 888–895. [11] J. Wang, H.J. Hoogeboom, L. Pan, Gh. Păun, M.J. Pérez-Jiménez, Spiking neural P systems with weights, Neural Comput. 22 (2010) 2615–2646. [12] X. Zeng, X. Zhang, T. Song, L. Pan, Spiking neural P systems with thresholds, Neural Comput. 26 (7) (2014) 1340–1361. [13] X. Song, J. Wang, H. Peng, G. Ning, Z. Sun, T. Wang, F. Yang, Spiking neural P systems with multiple channels and anti-spikes, Biosystems 169–170 (2018) 13–19. [14] L. Pan, Gh. Păun, G. Zhang, F. Neri, Spiking neural p systems with communication on request, Int. J. Neural Syst. 28 (8) (2017) 1–13, paper id: 1750042. [15] T. Wu, F. Bîlbîe, A. Pˇ aun, L. Pan, F. Neri, Simplified and yet Turing universal spiking neural P systems with communication on request, Int. J. Neural Syst. (2018). paper id: 1850013. Available at https://doi.org/101142/ S0129065718500132. [16] T. Wu, A. Păun, Z. Zhang, L. Pan, Spiking neural p systems with polarizations, IEEE Trans. Neural Netw. Learn. Syst. 28 (8) (2018) 3349–3360. [17] O.H. Ibarra, A. Păun, A. Rodríguez-Pa´ ton, Sequential SNP systems based on min/max spike number, Theoret. Comput. Sci. 410 (30) (2009) 2982–2991. [18] X. Zhang, X. Zeng, B. Luo, L. Pan, On some classes of sequential spiking neural P systems, Neural Comput. 26 (5) (2014) 974–997. [19] H.M. Chen, T.-O. Ishdorj, Gh. Păun, Computing along the axon, Progress Natual Sci. 17 (4) (2007) 417–423. [20] M. Cavaliere, O.H. Ibarra, Gh. Păun, O. Egecioglu, M. Ionescu, S. Woodworth, Asynchronous spiking neural P systems, Theoret. Comput. Sci. 410 (24) (2009) 2352–2364. [21] T. Song, L. Pan, Gh. Păun, Asynchronous spiking neural P systems with local synchronization, Inform. Sci. 219 (2012) 197–207. [22] H. Peng, J. Wang, M.J. Pérez-Jiménez, H. Wang, J. Shao, T. Wang, Fuzzy reasoning spiking neural P system for fault diagnosis, Inform. Sci. 23 (20) (2013) 106–116. [23] J. Wang, P. Shi, H. Peng, M.J. Pérez-Jiménez, T. Wang, Weighted fuzzy spiking neural P system, IEEE Trans. Fuzzy Syst. 21 (2) (2013) 209–220. [24] J. Wang, H. Peng, Adaptive fuzzy spiking neural P systems for fuzzy inference and learning, Int. J. Comput. Math. 90 (4) (2013) 857–868. [25] T. Wang, G.X. Zhang, J.B. Zhao, Z.Y. He, J. Wang, M.J. Pérez-Jiménez, Fault diagnosis of electric power systems based on fuzzy reasoning spiking neural P systems, IEEE Trans. Power Syst. 30 (3) (2015) 1182–1194. [26] J. Wang, H. Peng, M. Tu, M.J. Pérez-Jiménez, A fault diagnosis method of power systems based on an improved adaptive fuzzy spiking neural P systems and PSO algorithms, Chin. J. Electron. 25 (2) (2016) 320–327. [27] H. Peng, J. Wang, P. Shi, M.J. Pérez-Jiménez, A. Riscos-Núñez, Fault diagnosis of power systems using fuzzy tissue-like P systems, Integr. Comput.-Aided Eng. 24 (2017) 401–411. [28] H. Peng, J. Wang, J. Ming, P. Shi, M.J. Pérez-Jiménez, W. Yu, C. Tao, Fault diagnosis of power systems using intuitionistic fuzzy spiking neural P systems, IEEE Trans. Smart Grid 9 (5) (2018) 4777–4784. [29] D. Díaz-Pernil, F. Peña-Cantillana, M.A. Gutiérrez-Naranjo, A parallel algorithm for skeletonizing images by using spiking neural P systems, Neurocomputing 115 (2013) 81–91. [30] H. Peng, J. Wang, M.J. Pérez-Jiménez, A. Riscos-Núñez, An unsupervised learning algorithm for membrane computing, Inform. Sci. 304 (2015) 80–91. [31] H. Peng, J. Wang, P. Shi, M.J. Pérez-Jiménez, A. Riscos-Núñez, An extended membrane system with active membrane to solve automatic fuzzy clustering problems, Int. J. Neural Syst. 26 (3) (2016) 1–17, Article No. 1650004. [32] H. Peng, P. Shi, J. Wang, A. Riscos-Núñez, M.J. Pérez-Jiménez, Multiobjective fuzzy clustering approach based on tissue-like membrane systems, Knowl.- Based Syst. 125 (2017) 74–82. [33] G. Zhang, H. Rong, F. Neri, M.J. Pérez-Jiménez, An optimization spiking neural P system for approximately solving combinatorial optimization problems, Int. J. Neural Syst. 24 (5) (2014) 1–16, Article No. 1440006. [34] H. Chen, R. Freund, M. Ionescu, Gh. Păun, M.J. Pérez-Jiménez, On string languages generated by spiking neural P systems, Fund. Inform. 75 (1) (2007) 141–162. [35] X. Zhang, X. Zeng, L. Pan, On string language generated by spiking neural P systems with exhaustive use of rules, Nat. Comput. 90 (1) (2008) 535–549. [36] A. Păun, Gh. Păun, Small universal spiking neural P systems, BioSystems 90 (1) (2007) 48–60. [37] A. Păun, M. Sidoroff, Sequentially induced by spike number in SNP systems: small universal machines, in: Membrane Computing, Springer, 2012, pp. 333– 345. [38] L. Pan, Gh. Păun, M.J. Pérez-Jiménez, Spiking neural P systems with neuron division and budding, Sci. China Inf. Sci. 54 (8) (2011) 1596–1607. [39] A. Leporati, G. Mauri, C. Zandron, Gh. Păun, M.J. Pérez-Jiménez, Uniform solutions to SAT and Subset Sum by spiking neural P systems, Nat. Comput. 8 (4) (2009) 681–702. [40] R. Eckhorn, H.J. Reitboeck, M. Arndt, et al., Feature linking via synchrozation among distributed asemblies: simulation of results from cat cortex, Nat. Comput. 2 (3) (1990) 293–307.