Skip to content
#

program-synthesis

Here are 57 public repositories matching this topic...

izgzhen
izgzhen commented Oct 15, 2019

Currently, Cozy will hang at the following state for a long time:

$ time cozy examples/select-flatmap.ds -t 10
Checking call legality...
Checking invariant preservation...
Done!
Adding query q...
STARTING IMPROVEMENT JOB q
updating with 1 new solutions
update order:
  --> q
considering update 1/1...
SOLUTION FOR q AT 0:00:00.037117 [size=74]
-------------------------------------
ilyasergey
ilyasergey commented May 8, 2019

At the moment, synthesis can take "hints" about auxiliary functions, which can be used for synthesing the main one. For instance, this is a specification for tree flattening that takes an auxiliary function:

{ lseg(x1, s1) ** lseg(x2, s2) ** ret :-> x2 }
void lseg_append (loc x1, loc ret)
{ s =i s1 ++ s2 ; lseg(y, s) ** ret :-> y }

{ z :-> x ** tree(x, s) }
void flatten(loc z)
{ z :

Improve this page

Add a description, image, and links to the program-synthesis topic page so that developers can more easily learn about it.

Curate this topic

Add this topic to your repo

To associate your repository with the program-synthesis topic, visit your repo's landing page and select "manage topics."

Learn more

You can’t perform that action at this time.