acacia-bonsai
A minimal implementation of reactive synthesis via universal co-Buchi automata using antichains
Science Score: 49.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.8%) to scientific vocabulary
Repository
A minimal implementation of reactive synthesis via universal co-Buchi automata using antichains
Basic Info
- Host: GitHub
- Owner: gaperez64
- License: gpl-3.0
- Language: C
- Default Branch: master
- Size: 66.5 MB
Statistics
- Stars: 4
- Watchers: 2
- Forks: 4
- Open Issues: 14
- Releases: 5
Metadata Files
README.md
Acacia-Bonsai
This is a modern implementation of universal co-Buchi reactive synthesis algorithms using antichain data structures. The theory and practice is described in:
https://arxiv.org/abs/2204.06079
Dependencies
This program depends on: - Boost C++ Library - A modern C++ compiler (C++20 is used) - The Meson Build System - The Spot Library: Spot is automagically compiled as a submodule; however, it takes quite a bit of time to do so, and each build configuration of Acacia-Bonsai will recompile Spot. We recommend that Spot be separately compiled and installed. - The Z shell, for some scripts.
Some of the tests also depend on: - Valgrind
Compiling, running, benchmarking
To compile and run, use Meson:
$ meson setup build
$ cd build
$ meson compile
$ src/acacia-bonsai --help
[...]
$ src/acacia-bonsai -f '((G (F (req))) -> (G (F (grant))))' --ins req --outs grant
REALIZABLE
Note that this will compile a debug version of Acacia-Bonsai. A benchmarking script is available at the root:
$ ./self-benchmark.sh --help
In particular, it can be used to build an optimized version of Acacia-Bonsai:
$ ./self-benchmark.sh -c best -B
[...]
$ cd build_best
$ src/acacia-bonsai --help
$ src/acacia-bonsai -f '((G (F (req))) -> (G (F (grant))))' --ins req --outs grant
REALIZABLE
The -c option selects a configuration and the -B option deactivates actual
benchmarking, so that only compilation is done.
Compiling for StarExec
You will need some wrapping script (see starexec directory). Additionally,
you will need to compile in an x86_64 machine with
everything statically linked because StarExec runs on an old linux with old
libraries. For instance:
1. Set up a meson build library with
CXXFLAGS="-march=sandybridge -O3 -DNDEBUG" meson setup $BUILD_DIR --buildtype=release --prefer-static --default-library=static
2. Print the compilation command with meson compile -vC $BUILD_DIR for acacia-bonsai and add
-static to ensure everything is statically linked.
Citing
If you use this tool for your academic work, please make sure to cite the paper we wrote about it.
@inproceedings{DBLP:conf/tacas/CadilhacP23,
author = {Micha{\"{e}}l Cadilhac and
Guillermo A. P{\'{e}}rez},
editor = {Sriram Sankaranarayanan and
Natasha Sharygina},
title = {Acacia-Bonsai: {A} Modern Implementation of Downset-Based {LTL} Realizability},
booktitle = {Tools and Algorithms for the Construction and Analysis of Systems
- 29th International Conference, {TACAS} 2023, Held as Part of the
European Joint Conferences on Theory and Practice of Software, {ETAPS}
2022, Paris, France, April 22-27, 2023, Proceedings, Part {II}},
series = {Lecture Notes in Computer Science},
volume = {13994},
pages = {192--207},
publisher = {Springer},
year = {2023},
url = {https://doi.org/10.1007/978-3-031-30820-8\_14},
doi = {10.1007/978-3-031-30820-8\_14},
timestamp = {Sat, 29 Apr 2023 19:25:03 +0200},
biburl = {https://dblp.org/rec/conf/tacas/CadilhacP23.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
Owner
- Name: Guillermo A. Perez
- Login: gaperez64
- Kind: user
- Location: Antwerp, Belgium
- Company: University of Antwerp
- Website: https://gaperez64.github.io/
- Repositories: 39
- Profile: https://github.com/gaperez64
I am a software engineer turned computer scientist. My interests include formal verification, learning theory, and theoretical computer science in general.
GitHub Events
Total
- Commit comment event: 1
- Issues event: 1
- Issue comment event: 4
- Push event: 14
Last Year
- Commit comment event: 1
- Issues event: 1
- Issue comment event: 4
- Push event: 14
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 48
- Total pull requests: 6
- Average time to close issues: 4 months
- Average time to close pull requests: 19 days
- Total issue authors: 3
- Total pull request authors: 2
- Average comments per issue: 1.4
- Average comments per pull request: 1.33
- Merged pull requests: 6
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 4
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 0.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- gaperez64 (42)
- ncharl (3)
- michaelcadilhac (3)
Pull Request Authors
- gaperez64 (4)
- ncharl (2)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/upload-artifact v2 composite