Documentation contents

atlas Library · Script File

isomorphism_W.at

some isomorphisms of Weyl groups not necessarily coming from root systems
for example W(rd)\simeq W(dual(rd))
Source
atlas-scripts/isomorphism_W.at (94 lines)
Definitions
14
Loads
Loaded by
cells.at character_table_reps.at

Definitions in source order

index_standard_basis

L11index_standard_basis(vec v) = int
look up index of |v|, assumed to be a standard basis vector

no_F_factor

L14no_F_factor(RootDatum rd) = bool

int_mapping

L32int_mapping(mat M) = (int->int)
M=permutation matrix ->
permutation of [0,1,...,n-1] defined by a
M*e(n,j)=e(n,M*j)
atlas> M
Value:
| 0, 1, 0 |
| 0, 0, 1 |
| 1, 0, 0 |
atlas> M*e(3,0)=e(3,2)
Value: true
atlas> M*0=2
Value: true
atlas> all(for i:3 do M*e(3,i)=e(3,M*i) od)
Value: true
where |M| must be a permutation matrix
Commented-out code, lines 35–35 (1 lines)
set *(mat M,WeylElt w)=WeylElt: W_elt(w.root_datum,for i in w.word do M*i od)

permute 4 overloads

L40permute((int->int) f,WeylElt w,RootDatum rd_new) = WeylElt
for isomorphism renumbering |f| from generators of some W to generators of
W(rd_new), transform element w of W(rd) into an element of W(rd)
L42permute(mat M,WeylElt w,RootDatum rd_new) = WeylElt
L43permute(mat M,[WeylElt] classes,RootDatum rd_new) = [WeylElt]
L49permute((int->int) f,WeylElt w) = WeylElt
with just |w| given, apply renumbering automorphism of W given by |f| to |w|

also defined in combinatorics.at, simple_factors.at, character_table_reps.at

induced_bijection_on_classes

L54induced_bijection_on_classes( mat M, [WeylElt] classes, [WeylElt] classes_new) = [int]
M takes W_1 to W_2, given classes_1, classes_2, find the induced permutation
on classes. This requires a lookup since M takes w\in W_1 to w'\in W_2, but
not necessarily a conjugacy classes representative in W_2

induced_permutation_on_classes

L62induced_permutation_on_classes (mat M,[WeylElt] classes) = [int]

map_character

L66map_character(mat M,[WeylElt] classes,[WeylElt] classes_new,[int] char) = [int]
given M relating classes and classes_new, convert character for W_1 to W_2
move values from position |i| to position |map[i]|
L69

permute_character 2 overloads

L71permute_character(mat M,[WeylElt] classes,[int] char) = [int]
L74permute_character(mat M,WeylClassTable Wct,[int] char) = [int]

also defined in four.at

exchange_long_short

L80exchange_long_short(WeylClassTable Wct,[int] char) = [int]
map from W(rd) to W(dual(rd)), for F4 (or trivially for simply laced)

exchange_long_short_index

L91exchange_long_short_index(CharacterTable ct,int index) = int

Generated from atlas-scripts at commit 648506c (2026-10-13).