Ticket #7753 (closed enhancement: fixed)

Opened 8 months ago

Last modified 8 months ago

Coxeter groups: more Bruhat and weak order features

Reported by: nthiery Owned by: nthiery
Priority: major Milestone: sage-4.3.1
Component: combinatorics Keywords: Bruhat order, Weak order
Cc: sage-combinat Author(s): Nicolas M. Thiéry, Daniel Bump
Report Upstream: N/A Reviewer(s): Daniel Bump
Merged in: sage-4.3.1.alpha2 Work issues:

Description (last modified by nthiery) (diff)

New methods:

  • bruhat_le (code inspired from code by Daniel Bump)
  • weak_le
  • bruhat_poset (finite Coxeter groups)
  • weak_poset (finite Coxeter groups)

Improved doctests for related methods

(Trivially) depends on #7842

Attachments

trac_7753_root_systems-bruhat_order-nt.patch Download (30.7 KB) - added by nthiery 8 months ago.
Updated timings w.r.t. #7754 which is already in Sage

Change History

  Changed 8 months ago by nthiery

  • status changed from new to needs_review

follow-up: ↓ 3   Changed 8 months ago by bump

  • status changed from needs_review to needs_work
  • summary changed from Coxeter groups: more Bruhat and weak order features to Coxeter groups: more Bruhat and weak order features [with patch, needs work]

This patch implements the bruhat_order as a cached method and is badly needed.

With Sage 4.3, this raises an exception at the test in coxeter_groups.py, line 1010.

The definition of Q could be rewritten:

W = WeylGroup("B3")
sage: fcn = lambda x,y : x.bruhat_le(y)
sage: Q=Poset((W.list(),fcn))

Maybe the ?!? should be removed from the # long time directive a couple of lines later since it is unclear what it means.

in reply to: ↑ 2   Changed 8 months ago by nthiery

  • status changed from needs_work to needs_review
  • description modified (diff)
  • summary changed from Coxeter groups: more Bruhat and weak order features [with patch, needs work] to Coxeter groups: more Bruhat and weak order features

Replying to bump:

This patch implements the bruhat_order as a cached method and is badly needed. With Sage 4.3, this raises an exception at the test in coxeter_groups.py, line 1010.

Oops, I forgot that this depended on another patch; now #7842. As you mention, this dependency is trivial though, so we can also work around it if #7842 is not merged instantly.

Maybe the ?!? should be removed from the # long time directive a couple of lines later since it is unclear what it means.

Fixed, and updated the # long time around that line. I was just surprised by how much time this was taking. We need more Weyl group optimizations!

Changed 8 months ago by nthiery

Updated timings w.r.t. #7754 which is already in Sage

  Changed 8 months ago by bump

  • status changed from needs_review to positive_review

By now this code is tested a lot, at least for finite Weyl groups, and the previous reviewer comments were addressed. I am changing the status to positive review.

  Changed 8 months ago by rlm

  • status changed from positive_review to closed
  • resolution set to fixed
  • merged set to 4.3.1.alpha2

  Changed 8 months ago by mvngu

  • merged changed from 4.3.1.alpha2 to sage-4.3.1.alpha2
Note: See TracTickets for help on using tickets.