Documentation contents

atlas Library · Script File

convert_c_form.at

commands for converting from c-form to hermitian-form

Compute (lambda+rho) restricted to torus T
Source
atlas-scripts/convert_c_form.at (107 lines)
Definitions
11
Loads
Loaded by
hermitian.at extParamPol.at hodgeParamPol.at

Definitions in source order

lambda_plus_rho_res_T

L16lambda_plus_rho_res_T (KGBElt x,ratvec lambda) = ratvec
lambda\in X^*+rho =>
  one can define a parameter with this lambda, as p=param(x,lambda-rho,0)
then infinitesimal_character(p)=d_lambda(p)
which is lambda restricted to T-tilde
apply this with lambda itself returns (1+theta)*lambda/2  (on T-tilde)
apply this with lambda=rho,   returns (1+theta)*rho/2     (on T-tilde)
then the sum is (1+theta)(lambda+rho)/2 on T

mu 2 overloads

L21mu (Param p) = rat
mu(p) is the value of the lowest K-type of p, evaluated at x(p)
formula: mu(p) = < torus_factor(x)+rho^\vee , (1+theta_x)(lambda+rho)/2 >
L30mu (KType t) = rat
In fact it only depends on the K-type. Here we use the original formula

also in this file at line 80; also defined in coherent_irreducible.at

converting to Hermitian forms in unequal rank case
L36

number_real_orthogonal_pairs

L51number_real_orthogonal_pairs (KGBElt x, mat delta) = int
assumption: theta=involution(x) commutes with delta and x has no complex
descents (this holds for x=x(p) when p is finalized parameter with nu(p)=0)
Then the set of positive real roots is delta-invariant; the following
function computes the number of unordered pairs $P=\{ alpha,delta(alpha) \}$
with alpha a positive real real and < alpha^vee , delta*alpha > = 0,
whose parity gives sign of delta acting on Wedge^top(positive real roots).
Each orthogonal pair $P$ contributes $-1$ to sign, others contribute nothing:
  if <alpha^vee,delta*alpha> = -1, contributes 1 by computation in SL(3,R):
    -1 from pair is cancelled by -1 from action on
    [X_alpha,X_delta(alpha)=X_{alpha+delta(alpha)}
  if delta(alpha)=alpha, contributes 1 by reduction to simple case,
note: every really-simple root (simple among real roots) is actually simple
compensate for each pair being counted twice
L63
function |mu| below was initially described in Vogan in email of Oct 25, 2016
with subject: mu(p); it has been significantly modified since
It is a sum of rational terms, for which eventually differences (which should
be integer) will serve as exponents of |s|, therefore interpreted modulo 2
To facilitate analysis of the terms |mu_terms| returns them as a triple
L65

mu_terms

L72mu_terms (KType tp,mat delta) = (rat,rat,int)
the sum of these will be interpreted modulo 2/1
L78

mu

L80mu (KType tp,mat delta) = rat

also in this file at line 21, line 30; also defined in coherent_irreducible.at

convert_cform_hermitian 4 overloads

L87convert_cform_hermitian (KTypePol P,mat delta, KType p0) = KTypePol
convert (twisted) c-form to hermitian form, using p0 for normalization.
L93convert_cform_hermitian (KTypePol P,mat delta) = KTypePol
if no |p0| provided, use |first_param(P)|, a term of least height in |P|
L99convert_cform_hermitian (KTypePol P,KType p0) = KTypePol
version that defaults delta to inner class involution.
L103convert_cform_hermitian (KTypePol P) = KTypePol
apply both defaults simultaneously; this one is used from hermitian.at

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