Skip to content

Releases: synduce/Synduce

PLDI'22 Release

04 Mar 21:27
Compare
Choose a tag to compare
PLDI'22 Release Pre-release
Pre-release

This version corresponds to the tool as described in the paper Recursion Synthesis with Unrelizability Witnesses submitted at PLDI'22.

The artifact has been packaged as a VM and is available on Zenodo:
https://zenodo.org/record/6329754

Version evaluated for Formal Methods in Sofware Design submission

01 Feb 16:35
Compare
Choose a tag to compare

This release identifies the version of the tool as evaluated for the submission to the Formal Methods and Software Design submission. You will find testing and result-reporting scripts in the benchmarks folder.
Experimental data is available in benchmarks/data.

Full Changelog: 0.2...fmsd22

Support for user-defined invariants

16 Dec 14:52
Compare
Choose a tag to compare
Pre-release

This version supports user-defined invariants, unrealizable benchmarks with feedback on possible repairs and automatic inference of invariants of the reference function.
There are many examples in the benchmarks/constraints and benchmarks/unrealizable folders.

For example, benchmarks/constraints/count_lt.ml is a synthesis task where the user has written a function counting the elements less than some parameter in a binary tree, and they want to synthesize an efficient function on binary search trees. To do that, the inputs of the target recursion skeleton are constrained to satisfy the is_bst by the attribute [@@requires is_bst].

CAV'21 Release

30 Jul 20:47
Compare
Choose a tag to compare
CAV'21 Release Pre-release
Pre-release

This release corresponds to the tool as described in the paper Counterexample-Guided Partial Bounding for Recursive Function Synthesis published at CAV'21.