WebSnapse v4 represents the next generation of Spiking Neural P (SN P) system simulators. Moving beyond the legacy Vue-based WebSnapse Reloaded, this version leverages the cutting-edge Svelte 5 framework and a high-performance FastAPI backend to provide a robust, reactive, and matrix-based simulation environment for theoretical computer science research.
Spiking Neural P systems are a class of distributed and parallel computing models inspired by the way biological neurons communicate through spikes. WebSnapse v4 transitions from traditional object-oriented simulation patterns to a reactive matrix-based architecture. By utilizing the Spiking Transition Matrix ($M_{\Pi}$), the engine achieves high-speed execution and deterministic/non-deterministic state exploration, all while maintaining a sleek, modern interface.
At the heart of WebSnapse v4 is a NumPy-powered backend that simulates SN P systems using matrix multiplication. The firing of rules and spike distribution are calculated via the product of the Spiking Transition Matrix ($M_{\Pi}$) and the current configuration vector, ensuring O(1) or O(n) complexity relative to the system size.
A full-suite designer toolbar built on XYFlow (Svelte Flow) allows researchers to:
Handle non-determinism with ease. When multiple rule combinations are valid, the engine presents a Branch Modal, allowing the user to select the computation path or explore all possibilities in a guided manner.
A batch-processing tool for formal language theory. The String Judge allows users to input a set of bitstrings and verify if the current SN P system accepts or rejects them based on defined halting conditions.
An integrated Gallery containing pre-built templates of famous SN P systems, such as:
server directory: cd serverpython -m venv venvsource venv/bin/activate (or venv\Scripts\activate on Windows)pip install fastapi uvicorn numpyuvicorn main:app --reloadclient directory: cd clientnpm installnpm run devhttp://localhost:5173This project is the terminal thesis work of Arturo Miguel V. Saquilayan in partial fulfillment of the requirements for the CS 199 (Special Problems II) course at the University of the Philippines Diliman.
Adviser: Francis George C. Cabarle Department: Department of Computer Science, College of Engineering.
MIT