Documentation contents

atlas Library · Script File

K_norm.at

Source
atlas-scripts/K_norm.at (287 lines)
Definitions
52
Loads
Loaded by
K_Nilpotent.at G2_unitary_dual.at tensor_product.at

Definitions in source order

height and K-norm of K-types L5

height of a K-type (x,lambda) is

a) \sum |<alpha^v,(1+theta_x)lambda/2>|  (| | is absolute value)

or equivalently

b)  <rho_check,from_dominant((1+theta_x)*lambda)> =
b') <2*rho_check,from_dominant((1+theta_x)*lambda/2)>

height can be modified by replacing rho_check with an arbitrary
ratvec v. For example: for defining height of L\cap K-types
for a Levi L, using v=rho_check(G).

By default K_norm is equal to height (using rho or some other v).
The "modified" K_norm is

K_norm(x,lambda) + 2*<rho_r(x),rho^v_r(x)>

(the precise form of the final term is not set in stone)
L7

K_norm

L28K_norm (RootDatum rd) = (KType->int)
ignore |rd|

also in this file at line 37, line 38, line 39, line 40, line 41, line 42, line 43, line 52, line 54; also defined in K.at

Commented-out code, lines 30–34 (4 lines)
modified K-norm; uncomment if you want to override the one defined above
set K_norm (RootDatum rd) = (KType->int): (KType t):
  let mu=dominant(rd,(1+involution(t.x))*t.lambda)
  in rat_as_int(rho_check(rd)*mu + rho_check_r(t.x)*rho_r(t.x)*2)

K_norm 7 overloads

L37K_norm (RootDatum rd,KType p) = int
we can ignore a lot more than just |rd|
L38K_norm (RootDatum rd,Param p) = int
L39K_norm (RootDatum rd,Split s,KType p) = int
L40K_norm (RootDatum rd,Split s,Param p) = int
L41K_norm (KType p) = int
L42K_norm (Param p) = int
L43K_norm (Split s,KType p) = int

also in this file at line 28, line 52, line 54; also defined in K.at

K_norms 2 overloads

L46K_norms (RootDatum rd) = (KTypePol->[int])
K_norm of a KTypePol is the max of K_norm(terms)
L50K_norms (KTypePol P) = [int]

also defined in K.at

K_norm 2 overloads

L52K_norm (RootDatum rd,KTypePol P) = int
L54K_norm (KTypePol P) = int

also in this file at line 28, line 37, line 38, line 39, line 40, line 41, line 42, line 43; also defined in K.at

all_K_norms 2 overloads

L56all_K_norms (RootDatum rd) = (KTypePol->[int])
L59all_K_norms(KTypePol P) = [int]

also defined in K.at

sort_by_K_norm

L62sort_by_K_norm (RootDatum rd) = ([KType] -> [KType])
sort [KType] by K_norm(v)

also in this file at line 70, line 71; also defined in K.at

sort_KTypePol_by_K_norm

L65sort_KTypePol_by_K_norm (RootDatum rd) = (KTypePol->[Split,KType])

sort_by_K_norm 2 overloads

L70sort_by_K_norm = ([KType] -> [KType])
L71sort_by_K_norm = ([(Split,KType)] -> [(Split,KType)])

also in this file at line 62; also defined in K.at

leading_terms 2 overloads

L98leading_terms ((KType->int) norm) = (KTypePol P)
L102leading_terms (KTypePol P) = KTypePol

also defined in K.at

radical_character

L106radical_character(RootDatum rd, vec lambda) = vec
element of X^* restricted to identity component of the center
Commented-out code, lines 108–117 (9 lines)
all_dominant_height_less_than(RootDatum rd,ratvec v,int N):
list gamma dominant in X^* s.t. <gamma,v> <=N
in applications gamma=(1+theta)lambda
algorithm:
set [lambda_1,...,lambda_{m-1}]=fundamental weights(rd)
set [lambda_m,...,lambda_{n-1}]=coradical_basis(rd)
[lambda_1,...,lambda_{n-1}] is Z-basis we want
set [rat]:c =[c_1,...,c_{n-1}] where c_i=<lambda_i,v>
use cone to find all mu=\sum a_i lambda_i such that <v,mu>=sum a_i*c_i<=N

all_dominant_height_upto 2 overloads

L120all_dominant_height_upto (RootDatum rd, ratvec v,int N) = mat
all gamma\in X^*, dominant, such that <gamma,v> <= N
columns are weights
L133all_dominant_height_upto (InnerClass ic, ratvec cowt,int N) = mat
instead of RootDatum, given InnerClass: use only compact_coradical_basis
columns are weights

lambda_rho_from_dominant_height_upto

L148lambda_rho_from_dominant_height_upto (KGBElt x, ratvec v, int N) = mat
run over dominant gamma\in X^* such that <gamma,v><=N,
for each one solve for lambda\in X^*-rho so that (1+theta)lambda=gamma
wts

also in this file at line 178

similar construction applied to L\subset G
L157

W_mod_W_L

L162W_mod_W_L(RootDatum rd_L,RootDatum rd_G) = [WeylElt]
set of representatives of W/W_L, using
w-> w.rho(u) is a bijection W/W_L -> W-orbit of rho(u)

L_dominant_conjugates

L169L_dominant_conjugates(RootDatum rd_L, RootDatum rd_G, vec gamma)
all W-conjugates of gamma which are L-dominant
initialize empty list, for each w\in W/W_L add from_dominant(G,w.gamma)
to the list if new

lambda_rho_from_dominant_height_upto

L178lambda_rho_from_dominant_height_upto (KGBElt x_L, RootDatum rd, ratvec v, int N) = mat
run over G-dominant gamma_G\in X^*;
run over L-dominant conjugates gamma_L of gamma
 for each one solve for lambda\in X^*-rho(L) so that (1+theta)lambda=gamma

also in this file at line 148

computing all K-parameters up to given height or K-norm
L190

K_parameters_height_upto 7 overloads

L195K_parameters_height_upto(KGBElt x, int N) = [KType]
basic usage: typically G is semisimple
more generally: no compact central torus
All K-parameters for G with given x, height up to N.
L202K_parameters_height_upto(KGBElt x, int N, ratvec v) = [KType]
G allowed to be reductive
All K-parameters for G with given x, height up to N.
L207K_parameters_height_upto(RealForm G, int N) = [KType]
L211K_parameters_height_upto(RealForm G, int N,ratvec v) = [KType]
L222K_parameters_height_upto (KGBElt x_L ,RootDatum rd, int N,ratvec v) = [KType]
all L\cap K-parameters, up to height N, where height is defined by pairing
  with v.
algorithm:
  find (x_L,lambda) so that (1+theta_x)lambda is L-dominant, and
  the G-dominant conjugate lambda' of this satisfies <lambda',rho_check(G)><=N
  for each such lambda find all (L\cap K)-parameters with the same differential
L\cap K-types
L228K_parameters_height_upto ((KGBElt,RootDatum,int)(x,rd,N):triple) = [KType]
variant: same function, different input syntax
L\cap K-types
L232K_parameters_height_upto(RealForm G,RootDatum rd, int N, ratvec v) = [KType]
L\cap K-types
Commented-out code, lines 236–236 (1 lines)
set K_parameters_height_upto(RealForm G,InnerClass ic, int N)=[KType]:K_parameters_height_upto(G,ic,N,rho_check(ic))
since K_norm >= height, {mu| K_norm<=N} is a subset of {mu|height <= N}
L240

K_parameters_norm_upto 3 overloads

L242K_parameters_norm_upto(RealForm G,RootDatum rd, int N, ratvec v) = [KType]
L246K_parameters_norm_upto(RealForm G, int N, ratvec v) = [KType]
L250K_parameters_norm_upto(RealForm G, int N) = [KType]

number_K_parameters_norm_upto

L254number_K_parameters_norm_upto(RealForm G, int N, ratvec v) = int

number_K_parameters_norm_upt

L255number_K_parameters_norm_upt(RealForm G, int N) = int

sort_by_height

L257sort_by_height = ([KType] -> [KType])

also defined in sort.at

Commented-out code, lines 259–259 (1 lines)
set sort_by_K_norm = ([KType] -> [KType]): sort_by((KType mu) int: K_norm(mu))

shorten

L261shorten(ratvec v) = string

print_K_parameters_by_height

L279print_K_parameters_by_height([KType] ktypes) = void

also in this file at line 274

print_K_parameters_by_K_norm

L282print_K_parameters_by_K_norm([KType] ktypes) = void

also in this file at line 276

print_K_parameters 2 overloads

L286print_K_parameters([KType] ktypes) = void
default: by height
L287print_K_parameters(KGBElt x_K,[KType] ktypes) = void

also in this file at line 265

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