Opened 4 years ago

Last modified 3 months ago

#16087 new enhancement

Limit roots in the geometric representation of Coxeter groups

Reported by: nthiery Owned by:
Priority: major Milestone: sage-6.4
Component: group theory Keywords: days57, plot, coxeter, days64
Cc: sage-combinat, jipilab, vripoll, tscrim Merged in:
Authors: Jean-Philippe Labbé, Vivien Ripoll Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: #15703 Stopgaps:

Description (last modified by jipilab)

Related tickets:


  • Cleanup this description!!!!!
  • Do an experiment to produce a picture of limit roots.
  • Shoot straight at producing a nice plot with a bunch of limit roots.
  • [X] Post the picture here.
  • [X] Benchmark the calculation.
  • Every hack along the way is fair.
  • Update the TODO list below with what would need to be done for a proper implementation.
  • Discard the experiment.

Matrix representation for Coxeter groups

  • [ ] Root space for general Coxeter groups

sage: L = RootSystem?(<"generalized" coxeter matrix>).root_space() sage: W = L.reflection_group() returns an instance of "CoxeterMatrixGroup?" Make it full featured

Inside the hierarchy: CoxeterGroups? FiniteCoxeterGroups? WeylGroups? Lorenzian/HyperbolicCoxeterGroups?: generic methods for Coxeter groups in an appropriate matrix representation

  • [ ] Allow <-1 coefficients in the Coxeter diagram, see #17798 and #16126
  • [ ] positive roots by depth
  • [X] Missing: elements of the group as matrices: for free from the above
  • [X] fundamental weights in the root space
  • [X] finding all reduced words
  • [ ] signature of the bilinear form
  • [ ] parabolic elements / elliptic elements of the group

algo: build all elements, and select those by a criterion of diagonalizability and max modulus of the eigenvalues

  • [ ] Compute limit roots L.limit_roots(...)
  • [ ] Visualize limit roots L.plot_limit_roots()

Attachments (1)

benchmark2.png (84.0 KB) - added by jipilab 3 years ago.
This is the goal (obtained by hacks)

Download all attachments as: .zip

Change History (14)

comment:1 Changed 4 years ago by vripoll

  • Cc vripoll added

comment:2 Changed 4 years ago by chapoton

  • Keywords coxeter added

comment:3 Changed 4 years ago by chapoton

  • Description modified (diff)

comment:4 Changed 4 years ago by tscrim

I'm (still) working on Lorentzian/Hyperbolic Cartan types in #15974 and I can post my preliminary work there if you want as well.

Last edited 4 years ago by tscrim (previous) (diff)

comment:5 Changed 4 years ago by jipilab

Dear Travis,

Yes! that would be great to have a look at what is already available!

Is the hyperbolic Cartan type you mean the one of Bourbaki, Chein'69 (given in Humphreys). Where there are the compact and finite-volume fundamental chambers?

We focus more on the general implementation of Coxeter groups where it is possible to choose different values for the label "oo" for the bilinear form giving "generalized" Coxeter graphs, so no conflict in sight a priori. A classification of Lorentzian/Hyperbolic? Cartan types is good to have too!

You may have a look at, where the generalized Coxeter graphs of "level 2" are classified. These Coxeter groups act on Lorentzian/hyperbolic space too. In this definition, "level 1" correspond to the union of finite-volume and compact hyperbolic Coxeter groups.

comment:6 Changed 4 years ago by tscrim

Hey Jean-Philippe,

Not quite. A hyperbolic Cartan type is an indefinite type, which when you remove any node, you get an affine or finite Cartan type (and compact means they are all finite type). This is the Cartan type version analogous statement to Prop 6.8 from Humphreys.

From this, there are only a finite number of rank 3 types, and nothing with would generate a label of 5 in the corresponding Coxter graph. So the Coexter graphs from these Cartan types would span a large subclass of the hyperbolic, but would not include all hyperbolic Coxeter diagrams (akin to the finite type).

It might be worthwhile (mathematically) to look at level k Cartan types too.

So we're doing different things, but with some potential overlap. I want to try and mitigate conflicts and duplication (if there would be any). I've posted my current WIP in case there's anything you want to pull from that, and any comments/suggestions you have are useful too. Be warned, it's somewhat of a mess still.

comment:7 Changed 4 years ago by jipilab

  • Description modified (diff)

Hey Travis,

Ok, great! What you just said correspond for Cartan type to the "level 1" definition for "generalized" Coxeter graphs introduced by Maxwell in '82 (Sphere packings and hyperbolic re ection groups, J. Algebra 79 (1982), no. 1, 78-97.)

We will have a look at the patch!

comment:8 Changed 4 years ago by jipilab

  • Dependencies set to #15703
  • Description modified (diff)

comment:9 Changed 4 years ago by vbraun_spam

  • Milestone changed from sage-6.2 to sage-6.3

comment:10 Changed 3 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4

comment:11 Changed 3 years ago by jipilab

  • Description modified (diff)

Changed 3 years ago by jipilab

This is the goal (obtained by hacks)

comment:12 Changed 3 years ago by jipilab

  • Description modified (diff)
  • Keywords days64 added

comment:13 Changed 3 months ago by tscrim

  • Cc tscrim added
Note: See TracTickets for help on using tickets.