Opened 10 years ago

Closed 8 years ago

#13248 closed enhancement (fixed)

Coxeter groups: all elements of length N, random elements

Reported by: tom denton Owned by: joyner
Priority: minor Milestone: sage-6.3
Component: group theory Keywords: sd40, coxeter
Cc: Nicolas M. Thiéry, heglin, Travis Scrimshaw, Darij Grinberg Merged in:
Authors: Tom Denton, Frédéric Chapoton Reviewers: Mike Zabrocki, Travis Scrimshaw
Report Upstream: N/A Work issues:
Branch: a96be6f (Commits, GitHub, GitLab) Commit: a96be6f6bbe8a90d811570c5023620955e82cce7
Dependencies: Stopgaps:

Status badges

Description (last modified by Frédéric Chapoton)

Two commonly desired constructions in a Coxeter group are to: a) Iterate over all elements of a given length - this happens especially in affine or other infinite coxeter groups in order to test hypotheses, construct homogenous elements, etc... b) Choose a random element, possibly with length specified. This often occurs to see if a non-special element has a given property.

Iterating over all elements of a given length in particular has a nice solution (due to N. Thiery) and anecdotally has been implemented (usually in an inelegant fashion) by numerous community members in response to short-term problems.

We provide some code implementing these functions!

Change History (18)

comment:1 Changed 10 years ago by tom denton

Keywords: sd40 added

comment:2 Changed 9 years ago by Jeroen Demeyer

Milestone: sage-5.11sage-5.12

comment:3 Changed 9 years ago by For batch modifications

Milestone: sage-6.1sage-6.2

comment:4 Changed 9 years ago by Frédéric Chapoton

Keywords: coxeter added

Where is the code ?

comment:5 Changed 9 years ago by tom denton

That's strange; I'm not sure why it isn't there.

The code should be the same used in the AffinePermutationGroup for the methods elements_of_length and random_element.

Example:

sage: A=AffinePermutationGroup?(['A',4,1])

sage: len(list(A.elements_of_length(1)))

5

sage: A.random_element(4)

Type A affine permutation with window [0, 4, 3, 2, 6]

comment:6 Changed 9 years ago by Frédéric Chapoton

Maybe we should then move the code to Coxeter groups, it it works.

comment:7 Changed 9 years ago by Frédéric Chapoton

Branch: u/chapoton/13248
Commit: c2ce1c2aadf83f0e4e10ec2ac307286ac5ecbd1f

here is a git branch, moving elements_of_length into the category of coxeter groups


New commits:

c2ce1c2trac #13248 first step : moving elements_of_length to coxeter groups

comment:8 Changed 8 years ago by git

Commit: c2ce1c2aadf83f0e4e10ec2ac307286ac5ecbd1f93faac6d489a6b3a54ff5573e90444290bcced8c

Branch pushed to git repo; I updated commit sha1. New commits:

93faac6Merge branch 'u/chapoton/13248' of trac.sagemath.org:sage into 13248

comment:9 Changed 8 years ago by Frédéric Chapoton

Cc: Nicolas M. Thiéry added; ntiery removed

comment:10 Changed 8 years ago by For batch modifications

Milestone: sage-6.2sage-6.3

comment:11 Changed 8 years ago by Frédéric Chapoton

Description: modified (diff)
Status: newneeds_review
Work issues: random not yet done

comment:12 Changed 8 years ago by git

Commit: 93faac6d489a6b3a54ff5573e90444290bcced8ca94f96885688a39006c58fceb041694a2716b372

Branch pushed to git repo; I updated commit sha1. New commits:

34cb3f9Merge branch 'u/chapoton/13248' of ssh://trac.sagemath.org:22/sage into 13248
a94f968trac #13248 first step towards random

comment:13 Changed 8 years ago by git

Commit: a94f96885688a39006c58fceb041694a2716b372fb613e237c7fb1785256f33fe115d7890c6120bb

Branch pushed to git repo; I updated commit sha1. New commits:

fb613e2trac #13248 remove code duplication

comment:14 Changed 8 years ago by Frédéric Chapoton

Work issues: random not yet done

comment:15 Changed 8 years ago by Frédéric Chapoton

Authors: sdentonTom Denton, Frédéric Chapoton
Cc: Travis Scrimshaw Darij Grinberg added
Reviewers: zabrockiMike Zabrocki

ping ?

comment:16 Changed 8 years ago by Travis Scrimshaw

Branch: u/chapoton/13248u/tscrim/13248
Commit: fb613e237c7fb1785256f33fe115d7890c6120bb707c9c39ec02ba112f19e614a26c99e430b7bd67
Reviewers: Mike ZabrockiMike Zabrocki, Travis Scrimshaw

Hey Frederic,

I've done some minor tweaks and made it so that random_element chooses the length at random in [0, 1000] (so the word is not too long) if not specified. LGTM otherwise, so if you're happy with my changes, then positive review.


New commits:

ec5652cMerge branch 'u/chapoton/13248' of trac.sagemath.org:sage into u/tscrim/13248
707c9c3Some review tweaks.

comment:17 Changed 8 years ago by Frédéric Chapoton

Branch: u/tscrim/13248u/chapoton/13248
Commit: 707c9c39ec02ba112f19e614a26c99e430b7bd67a96be6f6bbe8a90d811570c5023620955e82cce7
Status: needs_reviewpositive_review

Hello, and thanks.

I just corrected a typo in "chosen".

I'm setting this to positive review.


New commits:

a96be6ftrac #13248 just corrected a typo in "chosen"

comment:18 Changed 8 years ago by Volker Braun

Branch: u/chapoton/13248a96be6f6bbe8a90d811570c5023620955e82cce7
Resolution: fixed
Status: positive_reviewclosed
Note: See TracTickets for help on using tickets.