scieee AI-readable full text Open interactive document viewer

Spiking neural P systems with inhibitory rules

Peng, Hong; Li, Bo; Wang, Jun; Song, Xiaoxiao; Wang, Tao; Valencia Cabrera, Luis; Pérez Hurtado de Mendoza, Ignacio; Riscos Núñez, Agustín; Pérez Jiménez, Mario de Jesús

Abstract

Motivated by the mechanism of inhibitory synapses, a new kind of spiking neural P (SNP) system rules, called inhibitory rules, is introduced in this paper. Based on this, a new variant of SNP systems is proposed, called spiking neural P systems with inhibitory rules (SNP-IR systems). Different from the usual firing rules in SNP systems, the firing condition of an inhibitory rule not only depends on the state of the neuron associated with the rule but also is related to the states of other neurons. Moreover, from the perspective of topological structure, the new variant is shown as a directed graph with inhibitory arcs, and therefore seems to have more powerful control. The computational completeness of SNPIR systems is discussed. In particular, it is proved that SNP-IR systems are Turing universal number accepting/generating devices. Moreover, we obtain a small universal function-computing device for SNP-IR systems consisting of 100 neurons.

Full text

Spiking neural P systems with inhibitory rules ✩ Hong Peng a, Bo Li a, Jun Wang b,∗, Xiaoxiao Song b, Tao Wang b, Luis Valencia-Cabrera c, Ignacio Pérez-Hurtado c, Agustín Riscos-Núñez c, Mario J. Pérez-Jiménez 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 Spiking neural P systems Spiking neural P systems with inhibitory rules Inhibitory synapse a b s t r a c t Motivated by the mechanism of inhibitory synapses, a new kind of spiking neural P (SNP) system rules, called inhibitory rules, is introduced in this paper. Based on this, a new variant of SNP systems is proposed, called spiking neural P systems with inhibitory rules (SNP-IR systems). Different from the usual firing rules in SNP systems, the firing condition of an inhibitory rule not only depends on the state of the neuron associated with the rule but also is related to the states of other neurons. Moreover, from the perspective of topological structure, the new variant is shown as a directed graph with inhibitory arcs, and therefore seems to have more powerful control. The computational completeness of SNPIR systems is discussed. In particular, it is proved that SNP-IR systems are Turing universal number accepting/generating devices. Moreover, we obtain a small universal function-computing device for SNP-IR systems consisting of 100 neurons. 1. Introduction Membrane computing is a class of distributed parallel computing systems initiated by Gheorghe Păun [1], abstracted from the structure and functioning of biological cells as well as the cooperation of cell populations in tissues, organs, and biological neural networks [2]. These computing systems are known as P systems or membrane systems. Inspired by different biological mechanisms or by combining mathematical methods and/or ideas in computer science, a variety of P systems have been proposed in the past two decades [3–11]. These can be roughly classified as cell-like, tissue-like, and neural-like P systems. It has been proved that many P systems and variants are Turing complete (equivalent to a Turing machine) and effective (capable of solving NP-hard problems in a feasible time). Moreover, they have been applied to solve real-world problems [12,13], such as in ✩ This work was partially supported by the National Natural Science Founda-tion of China (No. 61472328), Research Fund of Sichuan Science and Technology Project (No. 2018JY0083), Chunhui Project Foundation of the Education Depart-ment of China (Nos. Z2016143 and Z2016148), and Research Foundation of the Education Department of Sichuan province (No. 17TD0034), China. ∗Corresponding author. machine learning [14–17], imageand signal-processing [18–24], robots [25,26], ecology, and system biology [27–29]. 1.1. Related work As one of the main forms of neural-like P systems, spiking neural P (SNP) systems, as proposed by Ionescu et al. [30], were abstracted from the biological fact that neurons handle and exchange spikes with each other along synapses. From the perspective of topological structure, an SNP system can be expressed as a directed graph, where the neurons are the nodes of the graph and the synapses correspond to the arcs between them. In addition to its topological structure, an SNP system contains two important components: data and firing rules. The data (denoted by a configuration vector) are used to describe the states of neurons, while the rules (spiking and/or forgetting rules) are used to characterize the dynamic behavior of the system. The firing rules have the form E/ac→ap, where Edenotes the regular expression. The semantics of the firing rule E/ac→ap can be explained as follows. Suppose that a neuron where the firing rule resides has nspikes. If an∈L(E) and n≥c, then the rule is enabled and the neuron fires. Note that L(E) denotes the set of languages generated by the regular expression E. When the firing rule is applied, cspikes are removed from the neuron (hence n−cspikes remain) and pnew spikes are generated. Then the generated pspikes are sent to its consequent neurons. If p=0, then the rule is known as a forgetting rule, written as E/ac→λ, where λdenotes the empty string. As described above, E-mail addresses: [email protected] (H. Peng), [email protected] (J. Wang). a firing rule E/ac→apin a neuron has a firing condition: an∈ L(E). It is important to point out that the firing condition is only related to the state of the neuron, and does not depend on the states of other neurons. Neurons work in parallel, so SNP systems are distributed parallel computing models. Nondeterminism is an interesting characteristic of SNP systems: when two or more spiking rules in a neuron can be applied at the same time, one is nondeterministically chosen and applied. Moreover, SNP systems can work in three modes: generating, accepting, and computing. A variety of SNP systems have been proposed. Motivated by the inhibitory and excitatory influence of astrocytes on synapses, Păun [31] and Pan et al. [32], discussed two SNP systems with astrocytes. Pan et al. [33] discussed SNP systems with anti-spikes by introducing anti-spikes that abstract from inhibitory impulses. Inspired by the biological fact that a synapse has one or more chemical channels, Peng et al. [34] presented SNP systems with multiple channels. Considering that the rules are placed in synapses instead of neurons, SNP systems with rules on synapses have been discussed by Song et al. [35], and another spike-consumption strategy was adopted by Peng et al. [36]. Chen et al. [37] investigated an axon P system where nodes were arranged in a linear structure and each only sent spikes to two neighbors. Inspired by the fact that every neuron has a positive or negative charge, SNP systems with polarizations have been discussed [38]. The structural dynamism of biological synapses inspired Cabarle et al. [39] to present an SNP system with scheduled synapses. Considering a new communication strategy among neurons, Pan et al. [40] discussed SNP systems with communication on request. With the limitation that at most one neuron works at each step, several sequential SNP systems were investigated by Ibarra et al. [41] and Zhang et al. [42]. Wang et al. [43] discussed an SNP system in which weights like those in artificial neural networks were introduced on synapses. Dynamic threshold neural P systems and coupled neural P systems were discussed by Peng et al. [44,45]. Moreover, using the thresholds instead of the original regular expression, Zeng et al. [46] proposed SNP systems with thresholds. Note that in SNP systems with thresholds, the firing condition is changed as n≥T. A global clock is usually assumed in SNP systems, so they are synchronized. However, Cavaliere et al. [47] and Song et al. [48] investigated two asynchronous SNP systems. By integrating fuzzy logic in SNP systems, several fuzzy SNP systems have been developed, such as fuzzy reasoning SNP systems [49], weighted fuzzy SNP systems [50], and interval-valued fuzzy SNP systems [51]. Computational properties of variants of SNP systems have been investigated. As function-computing, natural numbergenerating, and language-generating devices, most have been proved to be Turing universal [52–55]. Furthermore, SNP systems have been applied to (theoretically) solve a number of computationally hard problems in a feasible (polynomial or linear) time. Application of SNP systems in some real-world problems, such as fault diagnosis [56–59], image processing [60], and combinatorial optimization [61], has recently received much attention. 1.2. Motivation As mentioned above, data (i.e., states) and rules (firing and forgetting rules) are two important components in SNP systems and their variants. The firing condition an∈L(E) is only related to the state of the neuron with which the firing rule is associated. Hence whether a neuron fires depends solely on its current state and has nothing to do with the states of other neurons. Therefore, the behavior of each neuron in an SNP system is controlled only by its state (the number of spikes). From this, an interesting idea emerges: can the firing of a neuron be controlled by the states of other neurons? Is there a biological fact that can support this interesting idea? Two scientific findings in biological nervous systems [62,63] are related to this idea. (1) Excitatory synapse [64] The excitatory synapse transfers the excitation of presynaptic to postsynaptic. Once the action potential at the end of presynaptic fiber is reached, the excitatory synapse chemically or electrically passes it to the postsynaptic neurons and produces excitatory postsynaptic potentials. Excitatory postsynaptic potential is a depolarizing potential change that can be summed up by the activity of multiple excitatory synapses, and action potential is generated when it exceeds the threshold. (2) Inhibitory synapse [65] Presynaptic excitatory transmission has an inhibitory effect on postsynaptic excitation. When the excitatory (action) potential reaches the tip of the presynaptic fiber, it is transferred chemically or electrically to the postsynaptic neuron, where the inhibitory postsynaptic potential is produced. Inhibitory postsynaptic potential reduces the depolarization of the excitatory postsynaptic potential and thus inhibits action potential because of the short-circuit effect caused by hyperpolarization and increased ion permeability. In SNP systems, spikes received by a neuron from other neurons are accumulated to update the state of the neuron, and if the firing condition is satisfied, then some new spikes will be generated. Therefore, the functioning of an excitatory synapse is basically consistent with the firing mechanism in SNP systems and their variants. However, the functioning of an inhibitory synapse is not reflected in these systems. The main motivation of this paper is to develop an inhibitory rule based on the functioning of inhibitory synapses and then to propose a new model of SNP systems, SNP systems with inhibitory rules (SNP-IRs). An inhibitory rule has the form (Een,Ein)/ac→ap, where Een is called enable regular expression, while Ein is called inhibitory regular expression. The semantics of inhibitory rules will be explained in detail later. The new firing condition can be written as an1∈L(Een)∧an2∈ L(Ein), where n1is the number of spikes in the neuron where the inhibitory rule resides, and n2is the number of spikes in its preceding neuron (called an inhibitory neuron). Therefore, the firing condition indicates that the firing of an inhibitory rule in a neuron not only depends on its state but also is related to the state of other (inhibitor) neurons, which corresponds to the functioning of an inhibitory synapse. The new variant differs from SNP systems in the following ways. (1) The new variant introduces an inhibitory rule, inspired by the functioning of an inhibitory synapse. (2) In the new variant, the firing of rules depends on both a neuron’s state and those of other (inhibitor) neurons. However, the firing of rules in an SNP system is only related to a neuron’s state. Therefore, the new variant seems to have more powerful control than an SNP system. (3) Topologically, the new variant can be expressed as a directed graph with inhibitory arcs, which do not appear in standard SNP systems. In summary, the novelty of the work is to abstract an inhibitory rule inspired by the functioning of an inhibitory synapse and to propose SNP systems with inhibitory rules. The remainder of this paper is arranged as follows. Section 2 defines SNP-IR systems and provides an illustrative example. Section 3studies the computational completeness of SNP-IR systems as number-generating/accepting and function-computing devices. Conclusions are drawn and further work is suggested in Section 4. 2. SNP-IR systems To define SNP-IR systems more clearly, some notions and notations related to both SNP systems and formal language theory are briefly reviewed. Further details can be found in [2,66]. Let Σbe an alphabet. The set of all of the finite strings over Σis denoted by Σ∗, the empty string is written as λ, and the set of all of the nonempty strings over Σis denoted by Σ+. Usually, if Σ= {a}, then {a}∗and {a}+can be simply written as a∗and a+, respectively. A regular expression over Σis defined recursively: (i) λand every a∈Σare regular expressions; (ii) if E1,E2are two regular expressions over Σ, then (E1)(E2), (E1)∪(E2), and (E1)+are regular expressions over Σ; (iii) nothing else is a regular expression over Σ. A language L(E) can be associated with regular expression E over Σas follows: (i) L(λ)=λand ∀a∈Σ,L(a)= {a}; (ii) for any two regular expressions E1,E2,L((E1)∪(E2)) =L(E1)∪L(E2), L((E1)(E2)) =L(E1)L(E2), and L((E1)+)=(L(E1))+. 2.1. Definition Definition 1. An SNP-IR system of degree m≥1 is a tuple: Π=(O, σ1, σ2, . . . , σm,syn,in,out), where: (1) O= {a}denotes a singleton alphabet (ais known as the spike); (2) σ1, σ2, . . . , σmare mneurons, denoted by σi=(ni,Ri),1≤ i≤m, where: (a) ni≥0 denotes the number of spikes stored initially in neuron σi; (b) Ridenotes the finite set of rules of two types: (i) usual firing rules, of the form E/ac→ap; (ii) inhibitory rules, of the form (Een,Ein(i,j))/ac→ ap, where E,Een,Ein(i,j)are the regular expressions over O, and c≥1, p≥0, and c≥p; (4) syn = {(i,j)} ⊆ {1,2, . . . , m} × {1,2, . . . , m}with (i,i)∈ syn ∀1≤i≤m(synapse connections); (5) in,out ∈ {1,2, . . . , m}, respectively, distinguish input and output neurons. From the perspective of a topological structure, the SNP-IR system is presented as a directed graph with inhibitory arcs, where mneurons are the nodes of the graph, and the synapses correspond to the arcs between the nodes. Specifically, if the system Πworks in generative mode, then input neuron σin is removed from the system; by contrast, in accepting mode, output neuron σout is omitted. As usual, the state of a neuron at time tis denoted by the number of spikes, while the state of the whole system at that time is characterized by the configuration vector Ct=(n1(t),n2(t), . . . , nm(t)), where ci(t) is the number of spikes in neuron σi, 1 ≤ i≤m. Thus the initial configuration is C0=(n1,n2, . . . , nm). As a result, a transition from one configuration to another can be defined. Usually, such a sequence of transitions starting from the initial configuration is known as a computation. If a configuration where no rule can be applied is attained in a computation, then it halts. There are two types of rules in SNP-IR systems: usual firing rules and inhibitory rules. As in SNP systems, usual firing rules have the form E/ac→ap. Suppose that a firing rule E/ac→apis in neuron σi, and the neuron has ni(t) spikes. If ani(t)∈L(E) and Fig. 1. Rules: (a) inhibitory rule, and (b) extended inhibitory rule. ni(t)≥c, then the neuron fires and cspikes are removed from the neuron (ni(t)−cspikes are retained), and then pnew spikes are generated. The generated spikes are sent to its succeeding neurons. If q=0 in the rule, then it can written as E/ac→ λ, which is known as a forgetting rule. If the forgetting rule is applied, then cspikes are removed but no spike is generated. Inhibitory rules are of the form (Een,Ein,(i,j))/ac→ap, as shown in Fig. 1(a). Each inhibitory rule has two regular expressions to control the firing of a neuron: an enable regular expression Een and an inhibitory regular expression Ein,(i,j). Suppose that the inhibitory rule (Een,Ein,(i,j))/ac→apis associated with neuron σi. The enable regular expression Een is only related to neuron σi, and its firing condition is ani(t)∈L(Een). For the inhibitory regular expression Ein,(i,j), its firing condition is anj(t)∈ L(Ein,(i,j)), since it is only related to the state of neuron σj. Thus the firing condition of neuron σican be denoted by a Boolean expression, ani(t)∈L(Een)∧ anj(t)∈ L(Ein,(i,j)). Note that in Ein,(i,j), the subscript (i,j) indicates that there is an arc, called an inhibitory arc, between neurons σi and σj. An inhibitory arc that corresponds to an inhibitory synapse is denoted by an arc with a solid circle, as shown in Fig. 1(a), and neuron σjis therefore called the inhibitory neuron of σi. A directed arc with an arrow corresponds to an excitatory synapse. For neurons σiand σj, the following assumptions are given: (1) If neurons σiand σjhave an inhibitory arc, then there is no usual arc between them. (2) If neuron σjis an inhibitory neuron of neuron σi, then neuron σjcannot send a spike to neuron σi. Moreover, the number of spikes in neuron σjcannot be changed even if some inhibitory rule in neuron σiis applied. Therefore, for neuron σi, neuron σjonly plays the role of controlling the firing. A neuron may have more than one inhibitory neuron; for example, neuron σiin Fig. 1(b) has sinhibitory neurons, σj1, σj1, . . . , σjs. The inhibitory rule of the form (Een,Ein,(i,j1), . . . , Ein,(i,js))/ac→ apis called an extended inhibitory rule, whose firing condition can be denoted by ani(t)∈L(Een)∧anj1(t)∈ L(Ein,(i,j1))∧· · ·∧anjs(t)∈ L(Ein,(i,js)). Based on the above firing mechanism, the state of neuron σi at time t+1 can be computed as ni(t+1) ={ni(t)−c+n,if rule is used; ni(t)+n,otherwise, (1) where nis the number of spikes retrieved from other neurons. Note that whether a firing rule or inhibitory rule is applied, c spikes are removed from neuron σi. In every computing step, if a neuron σican use one of its rules, then a rule from Rimust be used. The firing conditions of two rules in a neuron may be satisfied simultaneously, such as Fig. 2. An illustrative example. two usual firing rules, two inhibitory rules, or a usual firing rule and an inhibitory rule. In either case, one of these enabled rules will be chosen nondeterministically. Consequently, the rules are applied sequentially in every neuron, whereas neurons work in parallel. Any computing can correspond to a spike train consisting of zeros and ones, which describe the behavior of the output neuron: write 1 when the output neuron excites the spikes, and write 0 when the output neuron fires. Hence the number of steps between the first two spikes excited by the output neuron is regarded as the computational result. Let N2(Π) be the set of numbers computed by Π.N2SNPn mdenotes the families of all sets N2(Π) computed by an SNP-IR system, consisting of at most m neurons and at most nrules in every neuron. Note that if one of mand nis not limited, then the symbol ‘‘*’’ is used to substitute it. We can execute the SNP-IR system Πunder the accepting mode: the spikes are received by an input neuron from the environment, and the output neuron is ignored. The system starts by importing the spike train from the environment, and then it stores the number nto a specified neuron in the form of 2nspikes. When the system halts, nis known as the number accepted by it. Denote by Nacc (Π) the set of numbers accepted by the system Π, in which the subscript acc identifies that the system works in the accepting mode. Nacc SNPn mdenotes the family of all sets Nacc (Π) accepted by an SNP-IR system consisting of at most mneurons and at most nrules in every neuron. 2.2. An illustrative example An example that can generate a string of zeros and ones is provided to clarify the working mechanism of SNP-IR systems. Suppose an SNP-IR system has three neurons, σ1,σ2, and σ3, as shown in Fig. 2. Note that out =3, i.e., neuron σ3is an output neuron. Initially, neurons σ1and σ2each have two spikes, while neuron σ3has no spike. Therefore, the initial configuration is C0= (2,2,0). At time 1, since neuron σ1has two spikes, rule a+/a→acan be applied. After applying the rule, a spike will be consumed and a new spike will be generated and sent to neuron σ3. Note that even if neuron σ2has two spikes that satisfy a2∈L(a+), two spikes in neuron σ1can inhibit the rule (a+,aa+)/a→ain neuron σ2 because a2∈L(aa+), so no rule is enabled in neuron σ2. Similarly, no rule is enabled in neuron σ3. Therefore, C1=(1,2,1). At time 2, with a spike in neuron σ3, rule a+/a→ais applied to send a spike to the environment. With a spike in neuron σ1, rule a+/a→ais applied to send a spike to neuron σ3. Since neuron σ2has two spikes and neuron σ1has one spike, the firing condition of rule (a+,aa+)/a→ais satisfied, i.e., a2∈L(a+)∧ a2∈ L(aa+), hence the rule is applied to send a spike to neuron σ3. After neurons σ1and σ2fire, neuron σ3will receive two spikes. Thus C2=(0,1,2). At time 3, due to two spikes in neuron σ3, rule a+/a→a is applied to send a spike to the environment. Since neuron σ2 has a spike and neuron σ1has no spike, rule (a+,aa+)/a→a and rule a→λare enabled simultaneously. Therefore, one of the two rules is nondeterministically chosen and applied, and the following two cases are considered: (1) If rule (a+,aa+)/a→ais applied, then neuron σ2sends a spike to neuron σ3. Thus C3=(0,0,2). At time 4, rule a+/a→ain neuron σ3is applied to send a spike to the environment. Then neuron σ3again sends a spike to the environment. Therefore, the spike train generated by the system is ‘‘01111’’. (2) If rule a→λis applied, then the spike in neuron σ2is consumed by rule a→λ. Thus C3=(0,0,1). At time 4, rule a+/a→ain neuron σ3is applied to send a spike to the environment. Therefore, the spike train generated by the system is ‘‘0111’’. 3. Computation completeness In this section, we will discuss the universality of SNP-IR systems as devices for number generating, number accepting, and function computing. The universality of SNP-IR systems will be proven by the simulation of register machines, by which all recursively enumerable sets of numbers can be generated/accepted by SNP-IR systems. Moreover, a small universal function-computing device can be constructed. A register machine is given as a tuple, M=(m,H,l0,lh,I), where mindicates the number of registers, His the set of instruction labels, l0is the start label, lhis the halting instruction label, and Iis the set of instructions. Each instruction in Iis associated with a label in H.Ihas three types of instructions: (1) li:(ADD(r),lj,lk) (add 1 to register rand then nondeterministically move to one of the instructions with labels lj, lk). (2) li:(SUB(r),lj,lk) (if register ris nonzero, then decrement it by 1 and move to the instruction with label lj; otherwise, move to the instruction with label lk). (3) lh:HALT (halting instruction). 3.1. SNP-IR systems as number generating devices A number ncan be computed by a register machine working in the generating mode. Starting from the instruction with label l0and with all of the empty registers, the machine constantly applies instructions as distinguished by labels until it halts; at this moment, the number contained in the first register is known as the result computed by M. As we know, the family NRE can be characterized by register machines. Theorem 1. N2SNP2 ∗=NRE Proof. Because N2SNP2 ∗⊆NRE is straightforward, it is only necessary to prove the inclusion NRE ⊆N2SNP2 ∗. Hence a register machine M=(m,H,l0,lh,I) working in the generative mode is considered. In general, all of the registers different from register 1 are assumed to be empty in the halting configuration, and during the computation, register 1 is never decremented. To simulate register machine M, an SNP-IR system Π1is designed, which contains modules of three types: an ADD module to simulate the ADD instruction (Fig. 3), a SUB module to simulate the SUB instruction (Fig. 4), and a FIN module to output the computational result (Fig. 5). Fig. 3. ADD module, simulating the ADD instruction li:(ADD(r),lj,lk). Assume that every register ris associated with a neuron σr. We can code the number in register r: if register rstores the number n≥0, then neuron σrhas 2nspikes. We associate a neuron σlwith every instruction lin H, and we introduce some auxiliary neurons to these modules. Assume that each auxiliary neuron initially has no spike, and each neuron σlithat is associated with li contains two spikes. Due to two spikes in neuron σli, the system Π1starts the simulation of the instruction li:(OP(r),lj,lk) (OP identifies one of the operations ADD and SUB). Starting from the activation of neuron li, the simulation deals with neuron σr as identified by OP, and two spikes are introduced in one of the neurons σljand σlk. The computation in Mis continually simulated until neuron σlhfires. During the computation, the spikes are sent into the environment twice, at times t1and t2, and the computational result is the value t2−t1associated with the number contained in register 1. To illustrate that the register machine Mis correctly simulated by the system Π1, we will discuss how ADD and SUB modules simulate ADD and SUB instructions, and how the computational result is exported by the FIN module. (1) ADD module (Fig. 3) - simulating an ADD instruction li: (ADD(r),lj,lk). The system Π1starts from the simulation of instruction l0, which is an ADD instruction. Assume that an ADD instruction li:(ADD(r),lj,lk) is simulated at time t. At this moment, neuron σlihas two spikes. Hence, rule a2→a2is used to send two spikes to neurons σc1and σr. Neuron σrreceives two spikes, meaning that register ris incremented by 1. At time t+1, with two spikes in neuron σc1, rules a2→a2and a2→acan be applied simultaneously. Therefore, one of the two rules in neuron σc1is chosen nondeterministically. There exist the following two cases: (i) At time t+1, if rule a2→a2is used, then neuron σc1sends two spikes to each of neurons σc2,σc3, and σc4. At time t+2, since neuron σc3has two spikes, rule (a2,a)→a2in neuron σc2is enabled, but rule (a,a2)→ain neuron σc4is inhibited. At time t+3, neuron σljreceives two spikes from neuron σc2, meaning that the system Π1starts to simulate instruction lj. Simultaneously, two spikes in neurons σc3 and σc4are consumed by rule a2→λ. (ii) At time t+1, if rule a2→ais used, then neuron σc1sends a spike to neurons σc2,σc3, and σc4. At time t+2, since neuron σc3has a spike, rule (a,a2)→ain neuron σc4is enabled, but rule (a2,a)→a2in neuron σc2is inhibited. At this time, rule a→ain neuron σc3is enabled. At time t+3, neuron σlkreceives two spikes in total from neurons σc3and σc4, Fig. 4. SUB module, simulating the SUB instruction li:(SUB(r),lj,lk). Fig. 5. FIN module. meaning that the system Π1starts to simulate instruction lk. Simultaneously, the spike in neuron σc2is consumed by rule a→λ. Therefore, the ADD module can correctly simulate the ADD instruction: when neuron σlireceives two spikes, the number of spikes in neuron σris increased by two, and one of the neurons σljand σlkis nondeterministically chosen. (2) SUB module (Fig. 4) - simulating a SUB instruction li: (SUB(r),lj,lk). Suppose that a SUB instruction li:(SUB(r),lj,lk) is simulated at time t. At this moment, neuron σlihas two spikes, hence its rule a2→ais used to send a spike to neurons σrand σc1. At time t+1, rule a→ain neuron σc1is used to send a spike to neuron σc3. Based on the number of spikes in neuron σr, there exist the following two cases: (i) At time t+1, if neuron σrcontains 2n+1 (≥3) spikes (because the number in register ris n), then rule a(aa)+/a3→ a2is used to send two spikes to neurons σc2,σc3, and σc4. At time t+2, since neuron σc3has three spikes, rule (a2,a2)/a2→a2in neuron σc2is applied to send two spikes to neuron σlj, but rule (a,a3)/a→ain neuron σc4 is inhibited. Moreover, three spikes in neuron σc3and two spikes in neuron σc4are consumed. Hence neuron σljhas two spikes, meaning that the system Π1starts to simulate instruction lj. (ii) At time t+1, if neuron crhas only a spike (since the number in register ris still zero), rule a→ais applied and a spike is sent to each of neurons σc2,σc3, and σc4. At time t+2, since neuron σc3has two spikes, rule (a,a3)/a→a in neuron σc4is applied to send a spike to neuron σlk, but rule (a2,a2)/a2→a2in neuron σc2is inhibited. Moreover, due to two spikes in neuron σc3,a2→ais applied to send a spike to neuron σlk, and a spike in neuron σc2is consumed by rule a→λ. Thus neuron σlkhas two spikes, meaning that the system Π1starts to simulate instruction lj. Consequently, the SUB instruction can be correctly simulated by the SUB module: the system starts from neuron σlireceiving two spikes, and ends with the sending of two spikes to neuron σlj(if the number in register ris greater than 0), or sending two spikes to neuron σlk(if the number in register ris 0). (3) FIN module (Fig. 5) — outputting the computation result. Assume that neuron σlhhas two spikes at time t, meaning that Mhalts, and neuron σ1contains 2nspikes (i.e., register 1 contains the number n). Due to two spikes in neuron σlh, rule a2→a2is applied to send two spikes to neuron σc1. At time t+1, neuron σc1sends a spike to neurons σc2,σout , and σ1. At time t+2, due to a spike in neuron σout , rule a→ais applied to send the first spike into the environment. Note that neuron σ1is an inhibitory neuron of neuron σc2. Since neuron σ1has (2n+1) ≥3 spikes, rule (a,a(aa)+)/a→ain neuron σc2is inhibited. Moreover, two spikes in neuron σ1are consumed by rule a(aa)+/a2→λ. The process is repeated until neuron σ1has only a spike. At time t+n+1, since neuron σ1has only a spike, rule (a,a(aa)+)/a→ain neuron σc2is applied to send a spike to neuron σout . At this time, the spike in neuron σ1is removed by rule a→λ. At time t+n+2, neuron σout sends a spike to the environment. Consequently, the interval between the two spikes sent to the environment by the system is (t+n+2)−(t+2) =n, which indicates exactly the number in register 1 when Mhalts. From the discussion above, the system Π1correctly simulates the register machine Mworking in generating mode, in which each neuron contains two rules at most. Therefore, the theorem holds. □ 3.2. SNP-IR systems as number accepting devices The number ncan usually be accepted by a register machine working in the accepting mode as follows. The machine first reads a spike train that codes a number from the environment and stores it in the first register, and all of the registers are assumed to be empty. Then, starting from the instruction with label l0, the machine continually uses the instructions as identified by labels. When the halting instruction is reached, the number is said to be accepted by M. Theorem 2. Nacc SNP2 ∗=NRE Proof. An SNP-IR system Π2working in accepting mode is designed to simulate the deterministic register machine M= (m,H,l0,lh,I). The proof will be described by a modification of the proof of Theorem 1. The system Π2contains modules of three types: a deterministic ADD module, a SUB module, and an INPUT module. Fig. 6 shows the INPUT module. Neuron σin is used to read spike train 10n−11 from the environment, where the interval between the two spikes in the spike train is (n+1) −1=n, which is the number to be accepted. Suppose that at time t, neuron σin reads the first spike from the environment. At time t+1, rule a→ain neuron σin is applied to send a spike to neurons σc1,σc2, and σc3. Note that neuron σc3 is the inhibitory neuron of neurons σc2and σc1. At time t+2, because neuron σc2contains only a spike, rule (a,a2)/a→ain neurons σc2and σc1is enabled. Neurons σc2and σc1send a spike to neuron σ1, and they exchange a spike with each other. As a result, neuron σ1receives two spikes, and a spike is still retained in each of neurons σc2and σc1. The process is repeated until the Fig. 6. INPUT module. Fig. 7. ADD module, simulating li:(ADD(r),lj). second spike arrives at neurons σc1,σc2, and σc3. During each step, neurons σc2and σc1exchange a spike with each other, and two spikes are added to neuron σ1. At time t+n−1, neuron σin reads the second spike from the environment. At time t+n, neuron σin sends a spike to neurons σc1,σc2, and σc3. At time t+n+1, since neurons σc1 and σc2each have two spikes, the spikes are removed by rule (a2,a)/a2→λ. Moreover, neuron σc3sends two spikes to neuron σl0. Consequently, from time t+2 to time t+n+1, neuron σ1 contains 2nspikes in total (i.e., the number of spikes in register 1 is n), and due to two spikes in neuron σl0, the system starts to simulate the initial instruction, l0. In the case of accepting mode, deterministic ADD instructions, of the form li:(ADD(r),lj), are used in the register machine, as shown in Fig. 7. Note that there is no inhibitory neuron in this module. Suppose that two spikes are received by neuron σli at time t. At time t+1, due to two spikes in neuron σli, rule a2←a2is applied to send two spikes to neurons σljand σr. Hence neuron σrhas two spikes, meaning that register ris incremented by 1. With two spikes in neuron σlj, the system starts to simulate instruction lj. Module SUB remains unchanged, as shown in Fig. 4. Module FIN is ignored, but neuron σlhremains in the system. When neuron σlhhas two spikes, this indicates that halting instruction lhis reached, and register machine Mstops. From the discussion above, the SNP-IR system correctly simulates the register machine working in accepting mode, where each neuron contains two rules at most. Therefore, the theorem holds. □ 3.3. SNP-IR systems as function computing devices A small universal SNP-IR system will be constructed to compute functions. The register machine M=(m,H,l0,lh,I) used to compute the function f:Nk→Ncan be illustrated as follows. Initially, karguments are introduced in kspecial registers (usually, the first kregisters are used), and all of the registers are assumed to be empty. The machine starts from instruction l0, and it executes constantly until the halting instruction lhis reached. At this moment, the function value of fis the number stored in another special register, rt. Denote by (ϕ0, ϕ1, . . .) a fixed admissible enumeration of the unary partial recursive functions. Fig. 8. The small universal register machine M′ u. Fig. 9. General design of universal SNP-IR system Π3. A register machine is said to be universal only if there exists a recursive function gsuch that ϕx(y)=Mu(g(x),y) holds for all natural numbers x,y. Korec [67] introduced a well-known small universal register machine for computing functions: Mu=(8,H,l0,lh,I). The register machine Muhas 23 instructions and 8 registers (labeled 0 through 7). By importing two numbers g(x) and yin registers 1 and 2, respectively, any ϕx(y) can be computed by the register machine Mu; when the machine halts, the function value is stored in register 0. An SNP-IR system will be designed to simulate the register machine Mu. For simplicity, we modify the register machine Muby adding a new register 8 and replacing the original halting instruction by l22 :(SUB(0),l23,lh),l23 : (ADD(8),l22),lh:HALT. Denote by M′ uthe modification of Mu, as shown in Fig. 8. Therefore, register machine M′ ucontains 24 ADD and SUB instructions, 9 registers, and 25 labels. Theorem 3. There exists a small universal SNP-IR system having 100 neurons for computing functions. Proof. We design an SNP-IR system Π3to simulate the universal register machine M′ u. The SNP-IR system Π3includes an INPUT module, an OUTPUT module, and several ADD and SUB modules to simulate the ADD and SUB instructions, respectively, of M′ u. The INPUT module is used to import a spike train from the environment, and the OUTPUT module exports the computational result. Fig. 9 shows the general design of the universal SNP-IR system Π3. Each register rin M′ ucorresponds to a neuron σr, and if register rstores the number n≥0, then neuron σrhas 2n spikes. Moreover, neuron σliin Π3corresponds to instruction li Fig. 10. INPUT module. in M′ u. When neuron σlireceives two spikes, it starts to simulate the instruction li. Once neuron σlhreceives two spikes, M′ uis completely simulated by the system Π3. Finally, the first two spikes sent to the environment by the output neuron σout are regarded as the computational result (stored in register 8). In the initial configuration, assume that all of the neurons are empty. Fig. 10 shows the INPUT module, which is used to read the spike train 10g(x)10y1 from the environment, where 2g(x) spikes are stored in neuron σ1and 2yspikes are placed in neuron σ2. Assume that at time t1, neuron σin receives the first spike from the environment. Similar to the analysis of the INPUT module in the proof of Theorem 2, at time t1+1, rule a→ain neuron σin is applied to send a spike to neurons σc1,σc2, and σc3. Note that neuron σc3is the inhibitory neuron of neurons σc2and σc1. At time t2+2, because neuron σc3contains only a spike, rule (a,a3)/a→a is enabled in neurons σc1and σc2and applied to send a spike to neurons σc4and σc5, and they exchange a spike with each other. Note that neuron σc3is also the inhibitory neuron of neurons σc4and σc5. At time t2+3, with a spike in neuron σc3, rule (a2,a2)/a2→a2in neuron σc4is enabled, but neuron σc5is inhibited. Neuron σc4sends two spikes to neuron σ1, and two spikes in neuron σc5are consumed by rule (a2,a2)/a2→λ. The process is repeated until the second spike arrives at neurons σc1, σc2, and σc3. During each step, two spikes in neuron σc4are added to neuron σ1. Therefore, from time t1+3 to time t1+g(x)+2, neuron σ1receives in total 2g(x) spikes (i.e., the number of spikes in register 1 is g(x)). Assume that neuron σin receives the second spike at time t2 (in fact, t2=t1+g(x)+2). Similarly, at time t2+1, rule a→ain neuron σin is applied to send a spike to neurons σc1, σc2, and σc3. At this time, neurons σc1,σc2, and σc3each have two spikes. At time t1+2, since neuron σc3has two spikes, rule Fig. 11. OUTPUT module. (a2,a3)/a2→a2is enabled in neurons σc1and σc2and applied to send two spikes to neurons σc4and σc5, and they exchange two spikes with each other. At time t1+3, due to two spikes in neuron σc3, rule (a4,a)/a4→a2in neuron σc5is enabled, but neuron σc4is inhibited. Neuron σc5sends two spikes to neuron σ2, and four spikes in neuron σc5are consumed by rule (a4,a2)/a4→λ. The process is repeated until the third spike arrives at neurons σc1,σc2, and σc3. During each step, two spikes in neuron σc5are constantly added to neuron σ2. Hence, from time t2+3 to time t2+y+2, neuron σ2receives in total 2yspikes (i.e., the number of spikes in register 2 is y). Since neuron σ3has three spikes, it fires to send two spikes to neuron σl0, meaning that the system starts to simulate the initial instruction l0. From Fig. 8, we can observe that all of the ADD instructions have the form li:(ADD(r),lj). Consequently, a deterministic ADD module, whose working principle was discussed in the proof of Theorem 2, can be used in the simulation of the ADD instruction, as shown in Fig. 7. The SUB module in Fig. 4 is used in the simulation of SUB instruction li:(SUB(r),lj,lk). The working principle of the SUB module was described in the proof of Theorem 1. Suppose that Mhalts now, i.e., the instruction lhis reached. The computational result is contained in register 8, and it never decreases during the computation. The computational result is exported by an OUTPUT module, as shown in Fig. 11. Assume that neuron σlhhas two spikes at time t, meaning that Mhalts, and neuron σ8contains 2nspikes (indicating the number nin register 8). At time t+1, neuron σlhsends two spikes to neuron σc1. At time t+2, neuron σc1sends a spike to neurons σ8,σc2, and σc3. Thus neuron σ8receives a spike, and it contains an odd number of spikes. Note that neuron σ8is the inhibitory neuron of neurons σc2and σc3. At time t+3, rule (a,a)/a←a in neurons σc2and σc3is applied to send a spike to neuron σout , and they exchange a spike with each other. At this time, two spikes are consumed in neuron σ8(i.e., the number in register 8 is decremented by 1). At time t+4, neuron σout sends the first spike to the environment. The process is repeated until only one spike is stored in neuron σ8, and neuron σout sends a spike to the environment each time. At time t+n+3, because only one spike is in neuron σ8, and neurons σc2and σc2each have a spike, rule (a,a(aa)+)/a←λis enabled. Thus the spike in neurons σc2and σc2is consumed. Consequently, from step t+4 to step t+n+3, neuron σout sends in total nspikes to the environment, which is exactly the number contained in register 8 when Mhalts. From the discussion above, the system Π3correctly simulates the register machine M′ u. In SNP-IR system Π3, we use a total of 100 neurons: (i) six neurons for the INPUT module; (ii) four Table 1 Comparison of different computing models in terms of small numbers of computing units. Computing models Number of neurons SNP-IR systems 100 PSNP systems [38] 200 SNQ P systems with one type of spike [40] 181 Recurrent neural networks [68] 886 neurons for the OUTPUT module; (iii) 56 auxiliary neurons for 14 SUB instructions; (iv) nine neurons for nine registers; and (v) 25 neurons for 25 instructions. □ Theorem 3 shows a small number of computing units (i.e., neurons) for SNP-IR systems as function-computing devices to achieve Turing universality. To further evaluate the computational power of SNP-IR systems, Table 1 compares the proposed variant with other computing models in terms of small numbers of computing units. From Table 1, we can observe that recurrent neural networks [68], PSNP systems [38], and SNQ P systems with one type of spike [40] need 886, 200, and 181 neurons, respectively, to achieve Turing universality for the computing function, and SNP-IR systems need fewer neurons than all of these. 4. Conclusions and further work We have proposed a new model of SNP systems, SNP-IR systems, which introduce inhibitory rules. These are inspired by the mechanism of inhibitory synapses, whereas usual firing rules are related to the mechanism of the excitatory synapse. Different from usual firing rules, the firing condition of an inhibitory rule not only depends on the state of the neuron where the rule resides, but also is related to the states of its inhibitory neurons. Therefore, whether a neuron fires in SNP-IR systems may be controlled by other neurons, i.e., its inhibitory neurons. This interesting feature, which SNP systems lack, indicates that SNP-IR systems have a stronger control ability. From the perspective of a directed graph, if neuron σjis an inhibitory neuron of neuron σi, then there exists a special arc from neuron σjto neuron σi, called an inhibitory arc. Different from usual arcs, inhibitory arcs do not transmit spikes; they only play the role of controlling a neuron’s firing. The computational power of SNP-IR systems was investigated. The universality of SNP-IR systems as number-accepting/generating devices was proved. Moreover, we established a small universality result of SNP-IR systems for computing functions: a small universal function-computing device consisting of 100 neurons was constructed. As stated in the existing SNP systems, some problems that refer to SNP-IR systems will be discussed, such as language generator, and asynchronous and sequential modes. Moreover, it is worth studying how to integrate other mechanisms or strategies in SNP-IR systems, so as to propose more models. As stated above, since inhibitory rule of the form (Een,¯ Ein)/ac →apis introduced SNP-IR systems, the firing of a neuron is controlled by both its own state and the states of its inhibitory neurons. However, the firing of a neuron in the existing SNP systems is controlled only by its own state. Therefore, SNP-IR systems can provide a stronger control ability than the existing SNP systems. This is a new and interesting attribute, which makes them more suitable for dealing with some practical application problems, for example, supervisory control problems in discrete event systems. The goal of supervisory control is to restrict the behavior of a system to satisfy the desired control specifications, such as deadlock avoidance or liveness enforcement in discrete event system. However, when the existing SNP systems are used to describe the discrete event system, they may suffer from the state explosion problem. Due to inhibitory rules, SNP-IR systems have a potential advantage to simplify the structure of model and reduce the corresponding state space so as to achieve the optimal supervisory control. Therefore, future work will address the application of SNP-IR systems in supervisory control problems in discrete event systems. Acknowledgments The authors thank the anonymous reviewers for providing very insightful and constructive suggestions, which have greatly help improve the presentation of this paper. References [1] G. Păun, Computing with membranes, J. Comput. Syst. Sci. 61 (1) (2000) 108–143, http://dx.doi.org/10.1006/jcss.1999.1693. [2] G. Paun, G. Rozenberg, A. Salomaa, The Oxford Handbook of Membrane Computing, Oxford University Press, Inc., 2010. [3] R. Freund, G. Pˇ aun, M. Pérez-Jiménez, Tissue-like P systems with channelstates, Theoret. Comput. Sci. 330 (1) (2005) 101–116, http://dx.doi.org/10. 1016/j.tcs.2004.09.013. [4] F. Bernardini, M. Gheorghe, Population P systems, J. UCS 10 (5) (2004) 509–539, http://dx.doi.org/10.3217/jucs-010-05-0509. [5] G. Pˇ aun, R. Pˇ aun, Membrane computing and economics: numerical P systems, Fund. Inform. 73 (1,2) (2006) 213–227, http://dx.doi.org/10.3217/ jucs-010-05-0509. [6] L. Ciencialová, E. Csuhaj-Varjú, A. Kelemenová, G. Vaszil, Variants of P colonies with very simple cell structure, Int. J. Comput. Commun. Control IV (3) (2009) 224–233, http://dx.doi.org/10.15837/ijccc.2009.3.2430. [7] A. Spicher, O. Michel, M. Cieslak, J. Giavitto, P. Prusinkiewicz, Stochastic P systems and the simulation of biochemical processes with dynamic compartments, BioSystems 91 (3) (2008) 458–472, http://dx.doi.org/10. 1016/j.biosystems.2006.12.009. [8] M. Gheorghe, F. Ipate, R. Lefticaru, M.J. Pérez-Jiménez, A. Turcanu, L. Valencia-Cabrera, M. García-Quismondo, L. Mierlˇ a, 3-col problem modelling using simple kernel P systems, Int. J. Comput. Math. 90 (4) (2013) 816–830, http://dx.doi.org/10.1080/00207160.2012.743712. [9] G. Pˇ aun, M. Pérez-Jiménez, Solving problems in a distributed way in membrane computing: dP systems, Int. J. Comput. Commun. Control V (2) (2010) 238–250, http://dx.doi.org/10.1080/00207160.2012.743712. [10] B. Song, C. Zhang, L. Pan, Tissue-like P systems with evolutional symport/antiport rules, Inform. Sci. 378 (C) (2016) 177–193, http://dx.doi.org/ 10.1016/j.ins.2016.10.046. [11] Z. Zhang, T. Wu, A. Pˇ aun, L. Pan, Numerical P systems with migrating variables, Theoret. Comput. Sci. 641 (C) (2016) 85–108, http://dx.doi.org/ 10.1016/j.tcs.2016.06.004. [12] G. Ciobanu, G. Pˇ aun, M. Pérez-Jiménez, Applications of Membrane Computing, Berlin: Springer-Verlag, 2006. [13] G. Pˇ aun, M. Pérez-Jiménez, Membrane computing: brief introduction, recent results and applications, BioSystems 85 (1) (2006) 11–22, http: //dx.doi.org/10.1016/j.biosystems.2006.02.001. [14] Y. Zhao, X. Liu, J. Qu, The k-medoids clustering algorithm by a class of P system, J. Inf. Comput. Sci. 9 (18) (2012) 5777–5790. [15] H. Peng, J. Wang, M. Pérez-Jiménez, A. Riscos-Núñez, An unsupervised learning algorithm for membrane computing, Inform. Sci. 304 (20) (2015) 80–91, http://dx.doi.org/10.1016/j.ins.2015.01.019. [16] H. Peng, J. Wang, P. Shi, M. 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, http://dx.doi.org/ 10.1142/S0129065716500040. [17] H. Peng, P. Shi, J. Wang, A. Riscos-Núñez, M. Pérez-Jiménez, Multiobjective fuzzy clustering approach based on tissue-like membrane systems, Knowl.- Based Syst. 125 (2017) 74–82, http://dx.doi.org/10.1016/j.knosys.2017.03. 024. [18] D. Díaz-Pernil, A. Berciano, F. Peña-Cantillana, M. Gutiérrez-Naranjo, Segmenting images with gradient-based edge detection using membrane computing, Pattern Recognit. Lett. 34 (8) (2013) 846–855, http://dx.doi. org/10.1016/j.knosys.2017.03.024. [19] H. Peng, J. Wang, M. Pérez-Jiménez, Optimal multi-level thresholding with membrane computing, Digit. Signal Process. 37 (2015) 53–64, http://dx. doi.org/10.1016/j.dsp.2014.10.006. [20] H. Peng, J. Wang, M. Pérez-Jiménez, P. Shi, A novel image thresholding method based on membrane computing and fuzzy entropy, J. Intell. Fuzzy Systems 24 (2) (2013) 229–237, http://dx.doi.org/10.3233/IFS-2012-0549. [21] R.I. Yahya, S. Hasan, L. George, B. Alsalibi, Membrane computing for 2D image segmentation, Int. J. Adv. Soft Comput. Appl. 7 (1) (2015) 35–50. [22] G. Zhang, M. Gheorghe, Y. Li, A membrane algorithm with quantuminspired subalgorithms and its application to image processing, Nat. Comput. 11 (4) (2012) 701–717, http://dx.doi.org/10.1007/s11047-0129320-2. [23] H. Peng, J. Wang, M.J. Pérez-Jiménez, A. Riscos-Núñez, The framework of P systems applied to solve optimal watermarking problem, Signal Process. 101 (2014) 256–265, http://dx.doi.org/10.1016/j.sigpro.2014.02.020. [24] J. Wang, P. Shi, H. Peng, Membrane computing model for IIR filter design, Inform. Sci. 329 (2016) 164–176, http://dx.doi.org/10.1016/j.ins.2015.09. 011. [25] C. Buiu, C. Vasile, O. Arsene, Development of membrane controllers for mobile robots, Inform. Sci. 187 (2012) 33–51, http://dx.doi.org/10.1016/j. ins.2011.10.007. [26] X. Wang, G. Zhang, F. Neri, T. Jiang, J. Zhao, M. Gheorghe, F. Ipate, R. Lefticaru, Design and implementation of membrane controllers for trajectory tracking of nonholonomic wheeled mobile robots, Integr. Comput.-Aided Eng. 23 (1) (2016) 15–30, http://dx.doi.org/10.3233/ICA-150503. [27] M. Gheorghe, V. Manca, F. Romero-Campero, Deterministic and stochastic P systems for modelling cellular processes, Nat. Comput. 9 (2) (2010) 457–473. [28] M. García-Quismondo, M. Levin, D. Lobo-Fernández, Modeling regenerative processes with membrane computing, Inform. Sci. 381 (2017) 229–249, http://dx.doi.org/10.1016/j.ins.2016.11.017. [29] M. García-Quismondo, I. Nisbet, C. Mostello, M. Reed, Modeling population dynamics of roseate terns (sterna dougallii) in the northwest atlantic ocean, Ecol. Model. 68 (2018) 298–311, http://dx.doi.org/10.1016/ j.ecolmodel.2017.12.007. [30] M. Ionescu, G. Păun, T. Yokomori, Spiking neural P systems, Fundam. Inform. 71 (2–3) (2006) 279–308. [31] G. Păun, Spiking neural P systems with astrocyte-like control, J. UCS 13 (11) (2007) 1707–1721, http://dx.doi.org/10.3217/jucs-013-11-1707. [32] L. Pan, J. Wang, H. Hoogeboom, Spiking neural P systems with astrocytes, Neural Comput. 24 (3) (2012) 805–825, http://dx.doi.org/10.1162/NECO_a_ 00238. [33] L. Pan, G. Păun, Spiking neural P systems with anti-spikes, Int. J. Comput. Commun. Control IV (3) (2009) 273–282, http://dx.doi.org/10.15837/ijccc. 2009.3.2435. [34] 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, http://dx.doi.org/10.1016/j.neunet.2017.08.003. [35] T. Song, L. Pan, G. Păun, Spiking neural P systems with rules on synapses, Theoret. Comput. Sci. 529 (2014) 82–95, http://dx.doi.org/10.1016/j.tcs. 2014.01.001. [36] 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, http://dx.doi.org/10.1109/TNB.2017.2783890. [37] H. Chen, T.-O. Ishdorj, G. Păun, Computing along the axon, Prog. Nat. Sci. 17 (4) (2007) 417–423. [38] T. Wu, A. Păun, Z. Zhang, L. Pan, Spiking neural P systems with polarizations, IEEE Trans. Neural Netw. Learn. Syst. 29 (8) (2018) 3349–3360, http://dx.doi.org/10.1109/TNNLS.2017.2726119. [39] F. Cabarle, H. Adorna, M. Jiang, X. Zeng, Spiking neural P systems with scheduled synapses, IEEE Trans. Nanobiosci. 27 (5) (2016) 1337–1347, http://dx.doi.org/10.1109/TNB.2017.2762580. [40] L. Pan, G. Păun, G. Zhang, F. Neri, Spiking neural P systems with communication on request, Int. J. Neural Syst. 28 (8) (2017) 1–13, http: //dx.doi.org/10.1142/S0129065717500423. [41] O. 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, http://dx.doi.org/10.1016/j.tcs.2009.03.004. [42] X. Zhang, X. Zeng, B. Luo, L. Pan, On some classes of sequential spiking neural P systems, Neural Comput. 26 (5) (2014) 974–997, http://dx.doi. org/10.1162/NECO_a_00580. [43] J. Wang, H. Hoogeboom, L. Pan, G. Păun, M. Pérez-Jiménez, Spiking neural P systems with weights, Neural Comput. 22 (2010) 2615–2646, http: //dx.doi.org/10.1162/NECO_a_00022. [44] H. Peng, J. Wang, M. Pérenz-Jiménez, A. Riscos-Núñez, Dynamic threshold neural P systems, Knowl.-Based Syst. 163 (2019) 875–884, http://dx.doi. org/10.1016/j.knosys.2018.10.016. [45] H. Peng, J. Wang, Coupled neural P systems, IEEE Trans. Neural Netw. Learn. Syst. (2018) http://dx.doi.org/10.1109/TNNLS.2018.2871999. [46] X. Zeng, X. Zhang, T. Song, L. Pan, Spiking neural P systems with thresholds, Neural Comput. 26 (7) (2014) 1340–1361, http://dx.doi.org/10.1162/NECO_ a_00605. [47] M. Cavaliere, O. Ibarra, G. Păun, O. Egecioglu, M. Ionescu, S. Woodworth, Asynchronous spiking neural P systems, Theoret. Comput. Sci. 410 (24) (2009) 2352–2364.