Reproduction Package for ASE 2023 Article `CEGAR-PT: A Tool for Abstraction by Program Transformation'
Description
CEGAR-PT
Artifact
In order to run this artifact please clone sv-benchmarks into this folder. Afterwards you can just run the program using the running instructions down below. The results used in the paper can be found in the folder transformation-for-verification-data.
The tag on the gitlab repository this artifact is based upon is ASE23.
A in depth explanation of the architecture and the use cases for which this tool was developed can be found on the website for this tool.
Setup
In order to setup this project, first initialize the submodules or clone this repository with the flag --recursive. Afterwards execute python3 src/setup.py in this directory, in order to add the required files to the submodules and download the verifiers and validators locally for execution with benchexec.
In order to use the patch generator version of CPAchecker, please clone the loopsummary branch of CPAchecker into src/tools and build it.
This step can be skipped, except for the cloning of sv-benchmarks, if you are using the artifact version of CEGAR-PT.
Running
In order to run this locally inside ./src
./main_bench.py --specification specification/path.prp program/to/verify.c
For example:
./main_bench.py --specification ../setup-files/test-run/unreach-call.prp ../setup-files/test-run/test_program.c
In order to execute with benchexec, execute the following insider ./src, after adapting bench.xml to suit your purposes:
./benchmark_local.sh
Developing
Every component being implemented can be modified independently of any other. In order to add some new verifier, program generator, validator, etc.. just create a new class which implements the abstract base class.
Files
CEGARPT-artifact-ASE23-proceedings.zip
Files
(308.3 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:f16ec5648e38e9066cd7168d4f40de8f
|
308.3 MB | Preview Download |