Published January 6, 2026
| Version 1.0
Software
Open
FAAST: Fair Asynchronous Automata Synthesis Tool
Authors/Creators
Description
This project contains a Python implementation of asynchronous automata based on the article Synthesising Asynchronous Automata from Fair Specifications by Béatrice Bérard, Srivathsan B., Benjamin Monmege and Arnab Sur. The tool has partly been produced during the internship of Abdelaziz Mohandi, supervised by Benjamin Monmege, then rewritten and polished by Benjamin Monmege. It is published under the Apache license.
The code is split in modules that you need to correctly import and make available in your working directory. For dependencies, include:
- AA.py
- letter.py
- DFA.py
- foataNF.py
- process.py
- word.py
All the previous files contain tests that can be run independently, and by the way show how to use the class. For instance, for the AA.py file, use the script below:
python3 AA.py
There is also the file
- dining_philo.py
that demonstrates the use of our tool in the case of dining philosophers, as described in the article.
Step-by-step instructions
If you want to use the docker container, run it, open one of the given urls, which will open a browser with JupyterLab, and then open the notebook tutorial.ipynb.
More precisely, after having downloaded the faast.tar.gz file, use the script below:
docker load < faast.tar.gz
docker run -p 8888:8888 faast:latest
and then open one of the urls provided in the terminal. This should open Jupyter Lab, in which you can open the notebook tutorial.ipynb . This notebook contains test cases of all the classes. Run the cells one by one, while following the explanations.
If you prefer, you can also run the individual file in the Jupyter Lab as described above.
Files
README.md
Files
(93.8 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:7c278974bb44235956eef6797f17e691
|
93.8 MB | Download |
|
md5:109a98cfc641fde0dc4ca748c5b57e4c
|
1.8 kB | Preview Download |
Additional details
Software
- Repository URL
- https://gitlab.lis-lab.fr/benjamin.monmege/faast
- Programming language
- Python
- Development Status
- Active