Abstract
We use the functional programming language Haskell to design semantic interpreters for the spiking neural P systems. Haskell provides an appropriate support for implementing the denotational semantics of a concurrent language inspired by the spiking neural P systems. This language and its semantics describe properly the structure and behaviour of the spiking neural P systems. The semantic interpreters capture accurately the nondeterministic behaviour, the time delays between firings and spikings, and the synchronization specific to spiking neural P systems.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
These components could be defined in BNF as pure syntactic entities, e.g., as lists.
The language \({\mathcal {L}}_{snp}\) is similar to that in Ciobanu and Todoran (2019, 2022). The set of statements \((s\in ) S\) is similar to the set of statements employed in Ciobanu and Todoran (2019), but there are also differences. The construct \(\,{\mathsf {init}}\,\pi \,\) is lacking from Ciobanu and Todoran (2019). A version of the construct \(\,{\mathsf {send}}\,\pi \,a\,\) is provided in Ciobanu and Todoran (2019), but it has no initialization effect.
The empty synchronous continuation Ce is used to handle steps where no spikes are emitted, e.g., because all neurons are closed and no neuron can move to the open status in the current step.
In the Haskell implementation available at http://ftp.utcluj.ro/pub/users/gc/eneiat/nc22., this program \(\rho _1\) is stored in variable rho1::Prog (in all files semSNP.hs, semSNP-rnd.hs and semSNP-fin.hs).
An element of a powerdomain is a tree-like structure, or a collection of “traces” essentially equivalent to an unfolding of such a tree.
Notice that executing (den rho3 7) of the nondeterministic program \(\rho _3\) by using the interpreter semSNP-fin.hs requires around 120 seconds on a processor Intel(R) Core(TM) i5-7200U with CPU @ 2.50 GHz, while executing the deterministic program \(\rho _1\) produces its output almost instantly.
References
Cabarle FG, Adorna HN, Martínez-del-Amor MA (2011) Simulating spiking neural P systems without delays using GPUs. Int J Nat Comput Res 2(2):19–31
Cabarle FG, Adorna HN, Péerez-Jiménez MJ, Song T (2015) Spiking neural P systems with structural plasticity. Neural Comput Appl 26(8):1905–1917
Ciobanu G, Todoran EN (2014) Continuation semantics for asynchronous concurrency. Fundam Inform 131(3–4):373–388
Ciobanu G, Todoran EN (2017) Denotational semantics of membrane systems by using complete metric spaces. Theor Comput Sci 701:85–108
Ciobanu G, Todoran EN (2019) A semantic investigation of spiking neural P systems. Lect Notes Comput Sci 11399:108–130
Ciobanu G, Todoran EN (2021) Spiking neural P systems and their semantics in Haskell. Presented at the International Conference on Membrane Computing, ICMC
Ciobanu G, Todoran EN (2022) A process calculus for spiking neural P systems. Inform Sci. 604:298–319. https://doi.org/10.1016/j.ins.2022.03.096
de Bakker JW, de Vink EP (1996) Control flow semantics. MIT Press, Cambridge
Gheorghe M, Lefticaru R, Konur S, Niculescu IM, Adorna HN (2021) Spiking neural P systems: matrix representation and formal verification. J Membr Comput 3:133–148
Gierz G, Hofmann KH, Keimel K, Lawson JD, Mislove M, Scott DS (2003) Continuous lattices and domains. Cambridge University Press, Cambridge
Ionescu M, Păun G, Yokomori T (2006) Spiking neural P systems. Fundam Inform 71:279–308
Ionescu M, Păun G, Pérez-Jiménez MJ, Rodriguez-Patón A (2011) Spiking neural P systems with several types of spikes. Int J of Comput Commun Control 6:647–655
Păun Gh (2002) Membrane computing. An introduction. Springer, Berlin, Heidelberg
Păun Gh, Rozenberg G, Salomaa A (eds) (2010) Handbook of Membrane Computing. Oxford University Press, Oxford
Pan L, Păun Gh, Zhang G, Neri F (2017) Spiking neural P systems with communication on request. Int J Neural Syst 27(8):1750042
Peng H, Li B, Wang J, Song X, Wang T, Valencia-Cabrera L, Pérez-Hurtado I, Riscos-Núñez A, Pérez-Jiméenez MJ (2020) Spiking neural P systems with inhibitory rules. Knowl Based Syst 188:105064
Pérez-Hurtado I, Orellana-Martín D, Martínez-del-Amor MA, Valencia-Cabrera L, Riscos-Núñez A (2022) A new P-Lingua toolkit for agile development in membrane computing. Inform Sci 587:1–22
Rabhi F, Lapalme G (1999) Algorithms: a functional programming approach. Addison-Wesley, Boston
Rozenberg G, Salomaa A (eds) (1998) Handbook of formal languages, vol 3. Springer, Berlin
Schmidt DA (1986) Denotational semantics: a methodology for language development. Allyn & Bacon, Bacon
Scott DS (1980) What is denotational semantics? MIT laboratory for computer science distinguished lecture series, MIT Cambridge
Song X, Valencia-Cabrera L, Peng H, Wang J, Pérez-Jiménez MJ (2021) Spiking neural P systems with delay on synapses. Int J Neural Syst 31(1):2050042
Todoran EN (2000) Metric semantics for synchronous and asynchronous communication: a continuation-based approach. Electron Notes Theor Comput Sci 28:101–127
Verlan S, Freund R, Alhazov A, Ivanov S, Pan L (2020) A formal framework for spiking neural P systems. J Membr Comput 2(4):355–368
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Ciobanu, G., Todoran, E.N. Spiking neural P systems and their semantics in Haskell. Nat Comput 22, 41–54 (2023). https://doi.org/10.1007/s11047-022-09897-z
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11047-022-09897-z