-
Notifications
You must be signed in to change notification settings - Fork 236
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
Bundles for Algebra.*Homomorphism
, and their algebra: Hom
-'sets' for Algebra
#1960
Comments
I support this idea but not the concrete details. It's not currently done better in |
I'm not convinced we should have one module per structure but not strongly against it. I'd be interested to hear your justification of that over one file with all the bundles in it, which matches closer what we do elsewhere in the algebra hierarchy |
|
No, it's simply because the bundles didn't exist. It works a little better with some subcategory machinery in |
Re: one module per one algebra vs. how it is currently done now: |
I'd certainly be happy to see some experimentation with the design here |
Strongly agree with
as I ended up having to define some of these myself in a current project. While I'm a huge fan of small files and small modules, right now we should stay consistent with the rest of |
One (at least!) outstanding question: where should the bundled versions of |
Might be worth comparing .e.g. |
PR #1962 now makes that choice, and deploys it towards the actual intended uses. |
Should be closed by #1962, modulo merge conflict (arising from #1936?). |
Whatever the merits (or otherwise) of #1962 there's no consideration of the 'obvious' extensional equality on |
Since most of stdlib is now Let me suggest |
Agree re: As for |
[cf. #1962 where there's the beginnings of a possible design for this, so that I could properly define a left adjoint to the forgetful functor
Magma -> Setoid
, witnessed on objects byMagma.setoid
, but not really properly on morphisms. ]Algebra.Morphism.Structures
defines all the properties egisMagmaHomomorphism
of being aMagmaHomomorphism
, but there's nowhere (?) instdlib
where those properties are bundled with their morphisms between the underlyingSetoids
.Correspondingly, identity and composition for such things are distributed between
Relation.Binary.Morphism.Construct
andAlgebra.Morphism.Construct
, and which again operate only on the underlying proofs of properties.Proposal: we add actual bundled homomorphisms for all the algebraic
Structures
in the library, on a 'one structure, one module' basis, to which we also package theIdentity
andComposition
structures. UPDATED: bundled homomorphisms now underAlgebra.Morphism.Bundles
, with theirIdentity
andComposition
now handled underAlgebra.Morphism.Construct
Now, this may already all be done (nicely, better, ...?) in
agda-categories
, and if so, then a plea to merge in this stuff.The text was updated successfully, but these errors were encountered: