Skip to content

A set of basic tools for manipulating SyGuS benchmarks

Notifications You must be signed in to change notification settings

SyGuS-Org/tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SyGuS Tools

This repository contains tools to parse and manipulate SyGuS files.

Bug reports are very much appreciated, while pull requests with fixes for the bugs are even more highly appreciated!

Use the install_deps.sh script to install Python 3+ dependencies.

Checkers and Converters

  1. Checking if a file conforms to the SyGuS language standard:
# Check if /path/to/file.sl is a valid SyGuS v2 file

python3 -m sygus.bin.check -s 2 /path/to/file.sl
  1. Converting a file to a different version of the SyGuS language standard:
# Convert /path/to/file.sl from SyGuS v1 to SyGuS v2

python3 -m sygus.bin.convert -s 1 -t 2 /path/to/file.sl

Scripts for Batch Processing

  1. Use the batch-check.sh script to check entire directories (recursively):
./scripts/batch-check.sh -s 1 /path/to/dir_1 /path/to/dir_2

See ./scripts/batch-check.sh -h for more options.

  1. Use the batch-convert.sh script to convert an entire directory (recursively):
./scripts/batch-convert.sh -s 1 -t 2 -o /path/to/out_dir /path/to/in_dir

The script generates an identical directory structure under the out_dir output directory. It generates a file named sygus.sl for every successfully converted sygus.sl file, and a file named sygus.sl.err with the error messages for every sygus.sl file that it failed to convert.
See ./scripts/batch-convert.sh -h for more options.

About

A set of basic tools for manipulating SyGuS benchmarks

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published