CozySynthesizer / cozy

The collection synthesizer
https://cozy.uwplse.org
Apache License 2.0
209 stars 18 forks source link

Synthesis with underspecified functions #21

Open Calvin-L opened 6 years ago

Calvin-L commented 6 years ago

Sometimes it is useful to write "lenient" specifications, for instance:

return (any [c | c <- connections, c.writeable])

Cozy currently requires all specifications to be fully precise, in the sense that there is only one correct return value. This restricts how efficient its solutions can be when there are multiple possible correct answers and one answer is easier to compute than another.

One possible design that I endorse: