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))
Definitions in source order
index_standard_basis
L11
index_standard_basis(vec v) = intlook up index of |v|, assumed to be a standard basis vector
no_F_factor
L14
no_F_factor(RootDatum rd) = boolint_mapping
L32
int_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
permute 4 overloads
L40
permute((int->int) f,WeylElt w,RootDatum rd_new) = WeylEltfor 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)
L42
permute(mat M,WeylElt w,RootDatum rd_new) = WeylEltL43
permute(mat M,[WeylElt] classes,RootDatum rd_new) = [WeylElt]L49
permute((int->int) f,WeylElt w) = WeylEltwith 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
L54
induced_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
L62
induced_permutation_on_classes (mat M,[WeylElt] classes) = [int]map_character
L66
map_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
L71
permute_character(mat M,[WeylElt] classes,[int] char) = [int]L74
permute_character(mat M,WeylClassTable Wct,[int] char) = [int]also defined in four.at
exchange_long_short
L80
exchange_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
L91
exchange_long_short_index(CharacterTable ct,int index) = intGenerated from atlas-scripts at commit 648506c (2026-10-13).
Commented-out code, lines 35–35 (1 lines)