Skip to content
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

Relation.Binary.Definitions._Respects₂_ seems to exchange 'left' and 'right' in its left/right projections? #2471

Open
jamesmckinna opened this issue Sep 2, 2024 · 3 comments · May be fixed by #2515
Labels

Comments

@jamesmckinna
Copy link
Contributor

jamesmckinna commented Sep 2, 2024

The definition:

-- Respecting - relatedness is preserved on both sides by equality

_Respects₂_ : Rel A ℓ₁  Rel A ℓ₂  Set _
P Respects₂ _∼_ = (P Respectsʳ _∼_) × (P Respectsˡ _∼_)

has

  • left component the proof of _Respectsʳ_
  • right component that of _Respectsˡ_

This seems a like bug (cognitive dissonance at the very least). Worth fixing?

@JacquesCarette
Copy link
Contributor

I definitely think so. Breaking as it might be.

@jamesmckinna
Copy link
Contributor Author

One way to tackle breaking would be to have an interim v2.2-badged PR which introduces, say, _Respects²_, and deprecates _Respects₂_ in its favour, ahead of agreeing a/the 'right' name (possibly the original? I'm not thrilled by it...) for v3.0?

@MatthewDaggitt
Copy link
Contributor

Hmm while this would be one possible route, it would end up with us breaking the convention of always using subscripts to indicate arity. I think better to make the breaking change rather than end up in an unsatisfactory situation...

jamesmckinna added a commit to jamesmckinna/agda-stdlib that referenced this issue Dec 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
3 participants