You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The easiest way to get started is to use our pre-built docker image: docker pull holmessherlock/sailfish:latest.
However, if you want to build the tool yourself, follow the steps in docker/Dockerfile.
Running Sailfish
If you are using the docker image, spawn a container: docker run -it holmessherlock/sailfish:latest bash.
Navigate to the sailfish/code/static_analysis/analysis directory.
To run the symbolic executor, you need a compatible JSON file.
Check the input JSON specifications for detailed syntax.
If your JSON file comes from range analysis, run the translator to get a compatible JSON file before you run the tool.
--solver (default: cvc4): specify the backend solver to use, you may need to configure the solver (see here; for cvc4, the 1.7 version is recommended)
--beb (default: 0/strict mode, 10/tolerant mode): specify the block execution bound (maximum number of times a block can be executed), if set to integer <=0, no bound will be applied. For tolerant mode, 10 is recommended to eliminate potential soundness problem (see known issues).