Opened 7 years ago
Closed 7 years ago
#18610 closed defect (fixed)
Bug: Circular Descent Check in WeylGroups
Reported by:  nathanwilliams  Owned by:  

Priority:  major  Milestone:  sage6.8 
Component:  combinatorics  Keywords:  sagedays64.5, coxeter, descent 
Cc:  VivianePons, stumpc5  Merged in:  
Authors:  Nathan Williams  Reviewers:  Frédéric Chapoton 
Report Upstream:  N/A  Work issues:  
Branch:  ab4999f (Commits, GitHub, GitLab)  Commit:  ab4999f27f1e84c2659c544ccc1b5ee3afe7b729 
Dependencies:  Stopgaps: 
Description (last modified by )
The following code breaks:
WeylGroup(['A',2]).long_element().has_left_descent(1)
Change History (12)
comment:1 Changed 7 years ago by
 Cc VivianePons stumpc5 added
 Component changed from PLEASE CHANGE to combinatorics
 Description modified (diff)
 Keywords sagedays64.5 coxeter descent added
 Type changed from PLEASE CHANGE to defect
comment:2 Changed 7 years ago by
comment:3 Changed 7 years ago by
 Branch set to u/nathanwilliams/bug__circular_descent_check_in_weylgroups
comment:4 Changed 7 years ago by
 Commit set to 8fe1bb853913ea62a065bf5b53fa460928354815
 Status changed from new to needs_review
The suggestion is essentially a good one, but fails because CoxeterGroups().example()
is in a category where this again will cause an infinite loop. Changing has_right_descent(i)
in the way suggested works.
New commits:
5716df5  Fixed according to Travis's suggestions

4404133  Fixed according to Travis's suggestions, and now actually running I think

8fe1bb8  Tab fixed

comment:5 Changed 7 years ago by
see #15456
comment:6 Changed 7 years ago by
Oy. Veni, vidi, reliqui.
comment:7 followup: ↓ 8 Changed 7 years ago by
 Status changed from needs_review to needs_work
I think this really needs to be solved.
Either you go this way, but add a doctest, or you use the other ticket.
comment:8 in reply to: ↑ 7 Changed 7 years ago by
Replying to chapoton:
I think this really needs to be solved.
Either you go this way, but add a doctest, or you use the other ticket.
I had added a test, so could I ask you to be more specific about what you would like?
comment:9 Changed 7 years ago by
 Commit changed from 8fe1bb853913ea62a065bf5b53fa460928354815 to ab4999f27f1e84c2659c544ccc1b5ee3afe7b729
Branch pushed to git repo; I updated commit sha1. New commits:
ab4999f  more intelligent fix a la stump

comment:10 Changed 7 years ago by
 Status changed from needs_work to needs_review
comment:11 Changed 7 years ago by
 Reviewers set to Frédéric Chapoton
 Status changed from needs_review to positive_review
ok, this does not seem to break anything. Let it be
comment:12 Changed 7 years ago by
 Branch changed from u/nathanwilliams/bug__circular_descent_check_in_weylgroups to ab4999f27f1e84c2659c544ccc1b5ee3afe7b729
 Resolution set to fixed
 Status changed from positive_review to closed
This is because the Weyl group element implements
has_descent
, which is the standard entry point, and the default implementations do the following call structure:since I think most code calls
has_descent
and gives the shortest path function call path if someone only implementshas_left_descent
. So the solution would be to explicitly havehas_left_descent(i)
callhas_descent(i, side='left')
.