FM-Weck: Release
Description
fm-weck: Run formal methods tools in containerized environments
fm-weck is a command line tool and library that makes the execution of formal methods tools easy. fm-weck downloads the tools and caches them for later use.
We provide a tutorial on how to use fm-weck here.
Install dependencies
fm-weck requires Python 3.10 or higher. fm-weck relies on an available Podman or Docker installation. To install Podman on Ubuntu, run the following command:
sudo apt install podman
Modes of Operation
There are three modes of operation: run, shell and expert.
run: (Recommended) enables plug-and-play execution of formal methods tools: it downloads and unpacks a tool from the fm-tools metadata file into a user-specified cache directory on the host system and then runs the tool in the containerized environmentexpert: executes a tool in it’s containerized environment specified through the corresponding fm-tools YAML file: All arguments are passed verbatim to the tool.shell: enters an interactive shell inside of the container specified by the given tool
Development and Testing
When using any command with the fm-weck <cmd> toolname ... syntax, the tool name is searched in src/fm_weck/resources/fm_tools. During the build process of the .whl file for fm-weck, the fm_tools/data directory is copied to that location. When running or developing fm-weck from the git repository, the user must make sure that the contents of fm_tools/data directory are available in the src/fm_weck/resources/fm_tools directory.
In Linux this can be done by running the following command in the root directory of the project:
ln -s $(pwd)/fm_tools/data $(pwd)/src/fm_weck/resources/fm_tools
Publications
A paper about fm-weck has been accepted at the FM ’24 conference.
- FM-Weck: Containerized Execution of Formal-Methods Tools, by Dirk Beyer and Henrik Wachowitz. Proc. FM. Springer (2024). doi:10.1007/978-3-031-71177-0_3
Files
1.7.1.zip
Files
(893.8 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:fbbdc248600c0d7f8dbd244435a8b679
|
893.8 kB | Preview Download |
Additional details
Related works
- Is described by
- Conference paper: 10.1007/978-3-031-71177-0_3 (DOI)
Software
- Repository URL
- https://gitlab.com/sosy-lab/software/fm-weck
- Programming language
- Python
- Development Status
- Active