feat: recipe for logical fragments and multiplicative linear logic#504
feat: recipe for logical fragments and multiplicative linear logic#504
Conversation
thomaskwaring
left a comment
There was a problem hiding this comment.
This all looks very reasonable to me, it would be nice of course to see some theorems stress-testing the definitions, but that can happen down the track.
One suggestion (for here or in a follow-up) would be to define a custom cases / induction principle for, say, MLL.Proposition — it would package up the process of unpacking the predicate and discharging unreachable cases, and might be a more idiomatic way to set up an API boundary.
|
@thomaskwaring |
chenson2018
left a comment
There was a problem hiding this comment.
A few small style questions. The removal of grind lints seems nice here too.
Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com>
Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com>
Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com>
Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com>
Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com>
Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com>
chenson2018
left a comment
There was a problem hiding this comment.
I'm approving but disabling auto-merge, as I think the open scoped I mentioned in my last comment can be removed.
This PR:
Cslib.Logicnamespace.