Planning for Copilot 4.7.2 / 4.8 #724
Replies: 4 comments 2 replies
-
|
Kaveh, would you like to take a stab at fixing this warning we get when uploading packages to Hackage: That one's related to Line 89 in 0c987a7 Context: #690 |
Beta Was this translation helpful? Give feedback.
-
|
@carte731 if you want, once we deal with that one related to lambda case, you could also remove (in separate issues and PRs)
@RyanGlScott Is |
Beta Was this translation helpful? Give feedback.
-
|
I am aware of two prior discussions containing some noticeable (but relatively easy-to-fix) bugs. Perhaps we should elevate these to issues?
|
Beta Was this translation helpful? Give feedback.
-
|
Another thing worth including (as @RyanGlScott mentioned in the meeting today): updating copilot-theorem to work with the latest version of the Kind2 model checker. Currently, copilot-theorem generates Kind2 input in its s-expression-based native format, which has evolved over the past few years so that copilot-theorem's output is no longer accepted by current versions (v2.3.0) of Kind2. I think it's probably been broken since Kind2 v1.0 or so. The biggest difference appears to be in the location and style of "property" definitions -- newer Kind2 expects them to be nested inside a top-level E.g., consider this Copilot spec: kind2 = check $ kind2Prover def
counter :: Stream Word32
counter = [0] ++ (counter + 1)
spec = do
bounds <- prop "bounds" (forAll $ counter < 255)
theorem "nonneg" (forAll $ counter >= 0) (assume bounds >> kind2)It currently produces the following Kind2 output: Whereas current versions of Kind2 expect something along these lines: I think updating the Kind2 native format along these lines should be straightforward, requiring relatively minor changes mostly to Longer-term, it would be much better to target Lustre V4, which is a well-documented language independent of just Kind2 and is Kind2's only officially-supported input language. But this would of course require more effort than just updating support for the native format. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
This thread is to collect ideas for the next release of Copilot after 4.7.1 (May 7th), which will be versioned 4.7.2 or 4.8 (depending on whether we need to bump the major or not or not), and will be released on July 7th.
List ideas down if you want them considered for this release.
Shortlist (will be edited based on comments / discussions):
LambdaCase.Beta Was this translation helpful? Give feedback.
All reactions