-
Notifications
You must be signed in to change notification settings - Fork 4
Add the (very unfinished) rpylean. #6
New issue
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
base: master
Are you sure you want to change the base?
Conversation
|
I had a look at the build failure and pushed to |
373f96b to
ac9628d
Compare
|
Ah thanks, I had just done the same :) |
a411356 to
630242b
Compare
|
OK I think we now pass all the tests, even though there's still plenty missing: which probably means it's time to try and help write a few more tests as soon as I figure out what we're missing next. |
|
I think the next step in the tutorial is inductive types, right? Or do you mean more tests for the fragment without inductive types first? |
|
Depending on what precisely you think the sequence should be -- for example, I know that rpylean does not do anything at all with mutual definitions and theorems (we just check the first one and ignore all the rest of them). I would think that should go later but the way the new export format is laid out (which overall is clearly a big improvement as I got to delete lots of code) one needs to confront mutual defs, theorems and inductives immediately in the parser at least, because everything is represented as an array, including non-mutual versions of things. But yeah I suspect some inductive type tests would be great to have next! |
|
There are no mutual definitions! (As long as you only care about the safe subset and decline any unsafe definitions, which I think is totally fine for a checker) The parser format is a but unfortunate in that respect, see discussion at leanprover/lean4export#14 (review) If you only care about safe declarations then it's ok to flatten these arrays during parsing. |
d93176a to
c38b5e2
Compare
This can't be merged yet, as rpylean only supports the NDJSON export format as currently emitted by
lean4export's main branch (not thearena_json_outputone).It also obviously fails some tests, as we know it's not correct yet :).
But perhaps putting it here will motivate us to keep going, lka existing already motivated me to get back to it a bit this week.