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

Is fully commutative for Coxeter group elements #35915

Merged
merged 10 commits into from
Jul 20, 2023

Conversation

fchapoton
Copy link
Contributor

📚 Description

This is adding a method "is_fully_commutative" to all Coxeter group elements.

On the way, introduce iterators over the sets of reduced words of a given element.

📝 Checklist

  • The title is concise, informative, and self-explanatory.
  • The description explains in detail what this PR is about.
  • I have linked a relevant issue or discussion.
  • I have created tests covering the changes.
  • I have updated the documentation accordingly.

⌛ Dependencies

@fchapoton
Copy link
Contributor Author

Maybe one could try instead to add a method "is_fully_commutative" to the BraidOrbit classes

Copy link
Collaborator

@tscrim tscrim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a test showing things works for a Coxeter group with a "be_careful" indexing set?

Also, personally, I think we should expunge the # optional markers until they are actually used (in particular, can be reasonably tested against).

@fchapoton
Copy link
Contributor Author

Can we add a test showing things works for a Coxeter group with a "be_careful" indexing set?

Hello Travis, thanks for the idea. Would you please suggest a simple way to create such a group ?

(I prefer not to mess with these damn markers)

@tscrim
Copy link
Collaborator

tscrim commented Jul 11, 2023

There seems to be a bit of bug in the CoxeterMatrixGroup input ignoring the index set when passed something that can be interpreted as a Coxeter type.

Well, we can at least work around that by working with a Coxeter group for a very generic matrix:

sage: W = CoxeterGroup(CM, index_set=('a', Permutation([2,1]), -2), implementation="reflection")
sage: W.index_set()
('a', [2, 1], -2)

@fchapoton
Copy link
Contributor Author

fchapoton commented Jul 11, 2023

Thanks. Is my new doctest enough ?

EDIT: I see the index set is ignored there too.

@fchapoton
Copy link
Contributor Author

should be better now

Copy link
Collaborator

@tscrim tscrim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you. This is good.

@github-actions
Copy link

Documentation preview for this PR (built with commit dca133a; changes) is ready! 🎉

@vbraun vbraun merged commit 174c410 into sagemath:develop Jul 20, 2023
@mkoeppe mkoeppe added this to the sage-10.1 milestone Jul 20, 2023
@fchapoton fchapoton deleted the is_fully_commutative branch August 25, 2023 10:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants