sbv-program: Component-based program synthesis using SBV

[ bit-vectors, bsd3, formal-methods, library, smt, symbolic-computation ] [ Propose Tags ]

Given a library of available componen functions, synthesize a program implementing a specification.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 1.0.0.0, 1.1.0.0
Dependencies base (<5), bifunctors (>=5.5.13 && <5.6), containers (>=0.6.5 && <0.7), pretty-simple (>=4.1.2 && <4.2), sbv (>=9.0 && <9.1) [details]
License BSD-3-Clause
Copyright 2023 Gleb Popov
Author Gleb Popov
Maintainer 6yearold@gmail.com
Category SMT, Symbolic Computation, Bit vectors, Formal Methods
Home page https://github.com/arrowd/sbv-program
Bug tracker https://github.com/arrowd/sbv-program/issues
Source repo head: git clone https://github.com/arrowd/sbv-program
Uploaded by arrowd at 2023-01-26T17:05:14Z
Distributions
Downloads 97 total (8 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
All reported builds failed as of 2023-01-26 [all 1 reports]

Readme for sbv-program-1.1.0.0

[back to package description]

Component-based synthesis of loop-free programs

This package implements a library for synthesizing programs as described in the Component-based Synthesis Applied to Bitvector Programs paper. It uses an off-the-shelf SMT solver via sbv library.

See Examples.hs file to quickly get at how to use this. For deeper understanding of library's internals see the Haddock documentation.

The code is structured and commented in such way that it follows variable naming of the original paper.