Experiment with notation for algebra and category theory #1037
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is an experiment concerned with the way operators like
+
or∘
are overloaded with instance arguments.Currently, given e.g.
A : AbGroup ℓ
this is done byThe idea is to gain better notation with more flexibility and overloading by separating the notation from the data structures (just look at the changes). Here are a couple of things that would be nice to have:
_+_
fromSemiring
andCommRing
.+
in some contexts.AbGroupStr._+_ _ x y
instead ofx + y
. I think that shouldn't happen if_+_
is defined on top level with an instance argument.It is unclear to me, if this is a good idea performance-wise.