Prototype tool that synthesizes Datalog programs using ASP.
The canonical version of this tool is in the Zenodo artifact for the POPL'23 paper "From SMT to ASP: Solver-Based Approaches to Solving Datalog Synthesis-as-Rule-Selection Problems" by Aaron Bembenek, Michael Greenberg, and Stephen Chong.
This repository contains submodules; to load them, use this command:
git submodule update --init
The easiest way to install ABDS is to run it inside a Docker container:
docker build -t abds:latest .
docker run -it --name abds abds:latest
To install ABDS natively on an Ubuntu machine (such as an AWS server), you can use the script scripts/install_aws.sh.
To run our experiment involving the regular (i.e., non-scaling) benchmarks, use the script scripts/benchmark_regular.sh <EXPERIMENT_ID>.
To run the scaling experiment, use the script scripts/benchmark_scale.sh <EXPERIMENT_ID>.
See these scripts for different environment variables that can be set controlling the experiments (e.g., NTRIALS).
The results will be put into directories of the form results/(regular|scale)/<TOOL_NAME>/<EXPERIMENT_ID>/.