-
Notifications
You must be signed in to change notification settings - Fork 247
'Gradual' decidable equality combinators #803
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
Comments
* [ float ] bringing in the new agda features * [ name ] with safe decidable equality * [ meta ] with safe decidable equality * [ reflection ] safe and compatible with --without-K * [ literal ] moved to their own file * [ reflection ] more deprecations * [ cleanup ] import list of Reflection * [ reflection ] extracting Argument, Pattern Also cleanup, deprecation, new unArg-dec magic. * [ fix ] removing Reflection from the list of unsafe modules * [ changelog ] list new modules * [ deprecation ] of arg-info injectivity proofs * [ abstraction ] taken to its own module * [ build ] removing fake unsafe files, cleaning up GenerateEverything * [ refactor ] introducing DecidableEquality * [ re #803 ] 'gradual' decidable equality combinator for list * [ reflection ] putting Term in its own module Some cleaning up still needed. However I am stuck on a refactoring. * [ fix ] forgot to add Reflection.Term + Additional cleanup * [ fix ] no need to deprecate *private* definitions! * [ deprecated ] functions moved to Reflection.Term * [ reflection ] moving Definition to Reflection.Definition * [ typo ] * [ cosmetic ] more uses of DecidableEquality * [ changelog ] new modules
Towards a general solution to |
'commercial Agda developers' ??? |
Was this issue effectively put to bed by #811 ? If so, we should close, but perhaps document the pattern in the library design/style guide documentation? |
Agreed. Can we even test its use internally, or would that introduce dependencies that are a bit over the top? |
Stub content added to |
Uh oh!
There was an error while loading. Please reload this page.
When you define decidable equality for e.g.
you can't reuse
Data.List.Properties
'≡-dec
because it makes thetermination checker scream. However you would not have to redo all the
work if only we provided
Indeed mutually defining
then becomes easy:
I have used this trick twice in #799 to simplify decidable equality proofs
involving
Arg
andAbs
and there are probably numerous other places wherewe can define these combinators in the stdlib.
Edit: self-contained gist
The text was updated successfully, but these errors were encountered: