A simulator for Ï€-calculus processes.

EpiM is a software package developed for computing execution spaces of Ï€-calculus processes. It is build upon the general graph transformation framework in MÃ˜D.

The software is implemented in Python 3, but utilizes the core of MÃ˜D, which is implemented in C++, for the computation of execution spaces. The package also includes a large visualisation module that makes it possible to visualise (recursive) processes and their execution spaces.

Andersen, J.L., Hellmuth, M., Merkle, D., NÃ¸jgaard, N. and Peressotti, M. 2020. A Graph-Based Tool to Embed the Ï€-Calculus into a Computational DPO Framework. *Proceedings of the SOFSEM 2020 Student Research Forum co-located with the 46th International Conference on Current Trends in Theory and Practice of Computer Science (SOFSEM 2020)* (2020), 121â€“132.

Graph transformation approaches have been successfully used to analyse and design chemical and biological systems. Here we build on top of a DPO framework, in which molecules are modelled as typed attributed graphs and chemical reactions are modelled as graph transformations. Edges and vertexes can be labelled with first-order terms, which can be used to encode, e.g., steric information of molecules. While targeted to chemical settings, the computational framework is intended to be very generic and applicable to the exploration of arbitrary spaces derived via iterative application of rewrite rules, such as process calculi like Milnerâ€™s Ï€-calculus. To illustrate the generality of the framework, we introduce EpiM: a tool for computing execution spaces of Ï€-calculus processes. EpiM encodes Ï€-calculus processes as typed attributed graphs and then exploits the existing DPO framework to compute their dynamics in the form of graphs where nodes are Ï€-calculus processes and edges are reduction steps. EpiM takes advantage of the graph-based representation and facilities offered by the framework, like efficient isomorphism checking to prune the space without resorting to explicit structural equivalences. EpiM is available as an online Python-based tool.