We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The following should typecheck trivially (yellow safe), as there are no refinements. Instead, it crashes due to empty natural transformation:
⟦measure len : list(''a) => int⟧ type list(''a) = | Nil => [v| v∘len === 0] | Cons (x:''a, xs:list(''a)) => [v| v∘len === (xs∘len + 1)] ; ⟦val range : i:int => j:int => list(int) ⟧ let rec range = (i, j) => { let cond = i < j; if (cond) { let i1 = i + 1; let tl = range(i1, j); Cons(i, tl) } else { Nil } };
This stands in the way of L₇ test range. We delay this problem until we have datatypes over Z3 datatypes.
range
The text was updated successfully, but these errors were encountered:
No branches or pull requests
The following should typecheck trivially (yellow safe), as there are no refinements. Instead, it crashes due to empty natural transformation:
This stands in the way of L₇ test
range
.We delay this problem until we have datatypes over Z3 datatypes.
The text was updated successfully, but these errors were encountered: