atlas Library · Script File
induction.at
! Parabolic induction from real and $\theta$-stable parabolics; cuspidal and
$\theta$-stable data of a parameter, and some functions related to $\theta$-stable parabolics.
Parabolic induction:
_________________________
| If L is a $\theta$-stable Levi subgroup of G, then KGB for L embeds into KGB for G.
| For parabolic induction, a parameter p_L for the Levi L is assigned a parameter p_G for G:
|
| p_L=(x_L,lambda,nu) -> p_G=(embed_KGB(x_L,G),lambda + appropriate rho-shift,nu).
|
| For real parabolic induction, the rho-shift is: $\rho_r(G)-\rho_r(L)+(1-\theta)(\rho_S(G)-\rho_S(L))$.
| (Here $\rho_S$ is a certain half sum of complex roots.)
| The Levi L must be the Levi factor of a REAL parabolic subgroup.
|
| For $\theta$-stable (cohomological parabolic) induction, the rho-shift is:
| $\rho_i(G)-\rho_i(L)+\rho_{complex}(G)-\rho_{complex}(L) =\rho(G)-\rho_r(G)-\rho(L)+\rho_r(L)$.
| Since $\mathfrak q$ is $\theta$ -stable, $\rho_r(G)-\rho_r(L)=0$, so the shift is $\rho(G)-\rho(L)=\rho(\mathfrak u)$.
| The group L must be the Levi factor of a THETA-STABLE parabolic subgroup of G.
|
| Then $\operatorname{Ind}_P^G I(p_L)=I(p_G)$.
|
| In the $\theta$-stable case, the shifted parameter p_G may be non-standard and needs to be standardized:
| If p=(x,lambda,nu), and $\langle \text{lambda},\alpha^{\vee}\rangle <0$ for some imaginary root $\alpha$ (i.e. non-standard),
| let i_root_system=imaginary roots for x(p). Find $w$ so that $w^{-1}\cdot$lambda is dominant for
| imaginary roots, set p_dom=parameter(x,$w^{-1}\cdot$lambda,nu) and return coherent continuation
| action (wrt imaginary roots) of $w$ on p_dom.
|
$A_q(\lambda)$ construction:
______________________________________________
| Note: theta_induce_irreducible(pi_L,G) has infinitesimal character:
| infinitesimal character(pi_L)+rho(u).
| Aq(x,lambda,lambda_q) is defined as follows:
| if lambda_q is weakly dominant set q=q(x,lambda_q),
| apply derived functor to the one-dimensional lambda-rho(u) of L.
|
| REQUIRE: lambda-rho(u) must be in X^*.
|
| Aq(x,lambda,lambda_q) has infinitesimal character lambda+rho_L,
| thus the one-dimensional with weight lambda has infinitesimal character
| lambda+rho_L for L, and goes to a representation with
| infinitesimal character lambda+rho_L for G; i.e., Aq takes infinitesimal
| character gamma_L to SAME infinitesimal character for G.
| If lambda_q is not weakly dominant, define
| Aq(x,lambda,lambda_q)=Aq(wx,w\lambda,w\lambda_q),
| where w\lambda_q is weakly dominant.
|
Good/Fair conditions:
________________________
| Condition on the roots of $\mathfrak u$:
| For theta_induce(pi_L,G), gamma_L -> gamma_G=gamma_L+rho_u.
| Then:
| GOOD: <gamma_L+rho_u,alpha^vee> > 0;
| WEAKLY GOOD: <gamma_L+rho_u,alpha^vee> \ge 0;
|
| For Aq(x,lambda,lambda_q): gamma_L=lambda+rho_L;
| gamma_L -> gamma_G=gamma_L = lambda+rho_L
| Aq(x,lambda)=theta_induce(x,lambda-rho_u)
| Then:
| GOOD: <lambda+rho_L,alpha^vee> > 0;
| WEAKLY GOOD: <lambda+rho_L,alpha^vee> >= 0;
| FAIR: <lambda,alpha^vee> > 0;
| WEAKLY FAIR: <lambda,alpha^vee> \ge 0.
|
| theta_induce(pi_L,G) = Euler-Poincare characteristic of the
| cohomological induction functor.
|
| fair => vanishing outside middle degree => honest representation
| weakly fair: same implication.
| NB: <gamma_L-rho_L_rho_u,alpha^vee> >= 0 does NOT imply vanishing (in general) if pi_L is not weakly unipotent (e.g.,
| one-dimensional), hence "weakly fair" is only defined if pi_L is one-dimensional.
|
!Definitions in source order
ind_verbose
L88
ind_verbose = falseembed_KGB
L91
embed_KGB (KGBElt x_L,RealForm G) = KGBEltIf L is a theta-stable Levi factor in G, KGB for L embeds in KGB for G.
also defined in parabolics.at
inverse_embed_KGB
L95
inverse_embed_KGB (KGBElt x_G,RealForm L) = KGBEltGiven a KGB element of G, find one for the theta-stable Levi L which maps to it.
also defined in parabolics.at
real parabolic induction L99
makeS 2 overloads
L104
makeS (mat theta,RootDatum rd) = matGiven an involution theta and a root datum, return the set S of complex roots containing the first positive representative of each quadruple ($\pm$ alpha,$\pm$ theta(alpha)).
L109
makeS (KGBElt x) = matAs the previous function, with argument a KGB element x determining the involution and root datum
also defined in parabolics.at, nci_nilrad_roots.at
rho_S 2 overloads
L112
rho_S ((mat,RootDatum)pair) = ratvecHalf sum of roots in chosen set S of complex roots, described above.
L115
rho_S (KGBElt x) = ratvecAs previous function, with argument KGB element x.
also defined in parabolics.at
make_parabolic
L119
make_parabolic (RealForm L,RealForm G) = ParabolicGiven a Levi subgroup L of G, construct the parabolic with Levi L (this reverses Levi(P) defined in parabolics.at).
also defined in parabolics.at
real_induce_standard 2 overloads
L127
real_induce_standard (Param p_L,RealForm G) = ParamReal parabolic induction of a standard module of real Levi L (i.e., L must be the Levi factor of a real parabolic subgroup) to G
L138
real_induce_standard (ParamPol P,RealForm G) = ParamPolReal parabolic induction of standards, applied to a formal sum of parameters (ParamPol).
real_induce_irreducible_as_sum_of_standards
L144
real_induce_irreducible_as_sum_of_standards (Param p_L, RealForm G) = ParamPolWrite the (real) induced of an irreducible J(p_L) of L as a formal sum of standards for G; uses the character formula to write J(p_L) as a formal sum of standards for L first. (Auxiliary function)
real_induce_irreducible_final
L153
real_induce_irreducible_final (Param p_L, RealForm G) = ParamPolWrite the (real) induced $Ind(J(p_L))$ of an irreducible of |L| as a sum of irreducibles for |G|; uses composition series to convert output of the |real_induce_irreducible_as_sum_of_standards| into sum of irreducibles. The real form |L| of |p_L| must be the Levi factor of a real parabolic subgroup; and the parameter p_L must be final.
real_induce_irreducible
L158
real_induce_irreducible (ParamPol P,RealForm G) = ParamPolGiven a polynomial of parameters of L, real induce each term, and write the result as a polynomial of parameters for G.
real_induce_irreducible_final_verbose
L168
real_induce_irreducible_final_verbose (Param p_L, RealForm G) = ParamPolprint out partial information along the way the terms reported at length L are precisely those of length L in the final result set composition_series_verbose in kl.at
real_induce_irreducible_verbose
L176
real_induce_irreducible_verbose (ParamPol P,RealForm G) = ParamPolprint out partial information along the way the terms reported at length L are precisely those of length L in the final result set composition_series_verbose in kl.at
|real_induce_irreducible@(Param,RealForm)| not defined, as the |ParamPol| version suffices: implicit conversion |Param->ParamPol| will applyL184
cuspidal_data
L191
cuspidal_data (Param p) = (Parabolic,Param)---------------------- cuspidal data -----------------------------
Cuspidal data associated to a parameter p: a cuspidal parabolic subgroup P=MN and parameter p_M for a relative limit of discrete series so that Ind(I(p_M))=I(p); uses real_parabolic(x) of parabolics.at
theta-stable data L204
theta_stable_data
L210
theta_stable_data (Param p) = (Parabolic,Param)Theta-stable data associated to a parameter p: a theta-stable parabolic P=LN with L relatively split, and parameter p_L for a principal series representation so that p is obtained by cohomological parabolic induction from p_L; uses theta_stable_parabolic(x) of parabolics.at.
theta_stable_quasi_data
L228
theta_stable_quasi_data (Param q) = (Parabolic,Param)Theta-stable data associated to a parameter q: a theta-stable parabolic Q=LU with L quasisplit, and parameter q_L for a fine principal series representation so that is obtained by cohomological parabolic induction from q_L.
standardize L238
coherent_std_compact_Cartan
L245
coherent_std_compact_Cartan(WeylElt w,Param p) = ParamPolon the compact Cartan, coherent continuation is well defined even if the infinitesimal character is singular translate out -> coherently continue -> translate back p equivalent to p' => p=p' on the Compact Cartan so this is well defined
coherent_std_imaginary
L265
coherent_std_imaginary (WeylElt w,Param p) = ParamPolcoherent continuation using only imaginary roots to avoid technical issues involving the fact that atlas automatically finalizes terms in a ParamPol, pass to the cuspidal Levi, on which all the roots are imaginary, apply coherent continuation there, and induce back example: Sp(4,R) p=param(KGB(G,7),[3,-2],[1,0]) p_dom=param(KGB(G,7),[3,2],[1,0]) (lambda is dominant, but not gamma) is not dominant, so atlas changes this to the equivalent parameter param(KGB(G,5),[2,1],[0,1]) tricky to keep track of this the cuspidal Levi is M=SL(2,R)xGL(1) with root [0,2] coherent continuation is going on in M
standardize 2 overloads
L273
standardize (Param p) = ParamPolfind w so that w*lambda_dom=lambda, this should be in the imaginary Weyl group then compute coherent continuation by passing to the cuspidal Levi M
From the earlier documentation
Convert a possibly non-standard parameter into a linear combination of standard ones
L286
standardize (ParamPol P) = ParamPolstandardize a formal linear combination of possibly non-standard parameters
also defined in good_W_representatives.at
is_good
L290
is_good (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the good range for G; this only makes sense if L is the Levi of a (standard) theta-stable parabolic.
is_weakly_good
L304
is_weakly_good (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the weakly good range for G; this only makes sense if L is the Levi of a theta-stable parabolic.
project_on_center
L312
project_on_center (ratvec v, RootDatum L) = ratvecis_fair
L319
is_fair (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the fair range for G; this only makes sense if L is the Levi of a theta-stable parabolic.
is_weakly_fair
L334
is_weakly_fair (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the weakly fair range for G; this only makes sense if L is the Levi of a theta-stable parabolic.
goodness
L351
goodness (Param p_L,RealForm G) = stringDetermine the "goodness" of a parameter for L; returns "good", "weakly good", "fair", "weakly fair", or "none"; only makes sense if L is Levi of theta-stable parabolic.
theta-stable parabolic induction L366
theta_induce_standard
L371
theta_induce_standard (Param p_L,RealForm G) = ParamPolTheta-stable (cohomological) parabolic induction of a standard module for the Levi L of a theta-stable parabolic; if outside of weakly good range, must apply standardize.
theta_induce_parampol
L399
theta_induce_parampol (ParamPol P, RealForm G) = ParamPolGiven a ParamPol P, form a new ParamPol by theta-inducing each summand.
theta_induce_irreducible_as_sum_of_standards
L407
theta_induce_irreducible_as_sum_of_standards (Param p_L, RealForm G) = ParamPolWrite the (theta-stable) induced of an irreducible J(p_L) of L as a formal sum of standards for G; uses the character formula to write J(p_L) as a formal sum of standards for L first. (Auxiliary function)
theta_induce_irreducible_final
L422
theta_induce_irreducible_final (Param p_L, RealForm G) = ParamPolWrite the (theta-stable) induced Ind(J(p_L)) of an irreducible of L as a sum of irreducibles for G; uses composition series to convert output of the previous function into sum of irreducibles. The subgroup L must be the Levi factor of a theta-stable parabolic. The parameter p_L must be final.
theta_induce_irreducible
L434
theta_induce_irreducible (ParamPol P,RealForm G) = ParamPolGiven a polynomial of parameters, theta-induce each constituent, and write the result as a polynomial of parameters.
|theta_induce_irreducible@(Param,RealForm)| not defined, as the |ParamPol| version suffices: implicit conversion |Param->ParamPol| will applyL441
map_into_distinguished_fiber
L444
map_into_distinguished_fiber (KGBElt x) = KGBEltu
L456
u (KGBElt x) = matPositive coroots in the nilradical of the theta-stable parabolic determined by x.
set of coroots
dim_u 3 overloads
L460
dim_u(Parabolic P) = intDimension of $\mathfrak u$ (nilrad of theta-stable parabolic).
L463
dim_u(KGBElt x) = intDimension of the nilradical of the theta-stable parabolic determined by KGB elt x.
L466
dim_u (ratvec H,KGBElt x)Dimension of the nilradical of the parabolic determined by a weight H.
dim_u_cap_k 3 overloads
L469
dim_u_cap_k (Parabolic (,x):P) = intDimension of $\mathfrak u\cap\mathfrak k$ for theta-stable parabolic.
L480
dim_u_cap_k (KGBElt x) = intDimension of $\mathfrak u\cap\mathfrak k$ for theta-stable parabolic determined by x.
L484
dim_u_cap_k(ratvec lambda,KGBElt x) = intDimension of $\mathfrak u\cap\mathfrak k$ for theta-stable parabolic determined by weight lambda.
dim_u_cap_p 3 overloads
L490
dim_u_cap_p (Parabolic (,x):P) = intDimension of $\mathfrak u\cap\mathfrak p$ for theta-stable parabolic.
L501
dim_u_cap_p (KGBElt x) = intDimension of $\mathfrak u \cap\mathfrak p$ for theta-stable parabolic associated to x.
L505
dim_u_cap_p (ratvec lambda,KGBElt x) = intDimension of $\mathfrak u\cap\mathfrak p$ for theta-stable parabolic determined by weight lambda.
dim_u_cap_k_2
L511
dim_u_cap_k_2 (Parabolic P,ratvec H ) = int(Auxiliary function)
a coweight
dim_u_cap_k_ge2
L522
dim_u_cap_k_ge2 (Parabolic P,ratvec H) = int(Auxiliary function)
dim_u_cap_p_ge2
L533
dim_u_cap_p_ge2 (Parabolic P,ratvec H) = int(Auxiliary function)
dim_u_cap_k_1
L544
dim_u_cap_k_1 (Parabolic P,ratvec H) = int(Auxiliary function)
dim_u_cap_p_1
L555
dim_u_cap_p_1(Parabolic P, ratvec H)(Auxiliary function)
alternative versions of theta_induce_irreducible L565
find_N
L567
find_N (Param p_L,RealForm G) = intalso in this file at line 1023
First version using coherent continuation of irreducibles: coherent_irr(p,w) uses character_formula and composition_seriesL580
theta_induce_irreducible_coherent
L584
theta_induce_irreducible_coherent (Param p, RealForm G) = ParamPolmoved to coherent_irreducible.atL596
Second version using coherent continuation of irreducibles: using W_graph version of coherent_continuation block: block for G of the induced representation graph: W_graph of the blockL597
some representations L626
Aq(x,lambda,lambda_q)=Aq(wx,wlambda,wlambda_q) so we can assume lambda_q is dominantL628
make_dominant
L635
make_dominant (KGBElt x,ratvec lambda, ratvec lambda_q) = (KGBElt,ratvec,ratvec)Conjugate the triple (x,lambda, lambda_q) to make lambda_q weakly dominant (auxiliary function).
Aq_reducible
L643
Aq_reducible (KGBElt x,ratvec lambda, ratvec lambda_q) = ParamPolA_q(lambda) module; $\mathfrak q$ is defined by the weight lambda_q; x_in must be attached to the fundamental Cartan. The module is defined as a ParamPol, in case it is reducible.
Aq 4 overloads
L660
Aq (KGBElt x_in,ratvec lambda, ratvec lambda_q) = ParamA_q(lambda) module defined as above, but as a parameter, assuming it is irreducible.
L668
Aq (KGBElt x,ratvec lambda) = ParamIf not provided, assume lambda_q=lambda in the definition of A_q.
L672
Aq (RealForm G,ratvec lambda, ratvec lambda_q) = ParamA_q(lambda), specify G, not x, to use x=KGB(G,0).
L676
Aq(RealForm G,ratvec lambda) = ParamA_q(lambda), specify G, not x, and use lambda_q=lambda.
Good/Fair conditions L680
is_one_dimensional
L683
is_one_dimensional(Param p) = boolDecide whether a parameter defines a one-dimensional representation.
is_unitary_character
L687
is_unitary_character(Param p) = boolDecide whether a parameter defines a unitary one-dimensional character.
is_good
L694
is_good(KGBElt x_in,ratvec lambda_in,ratvec lambda_q_in) = boolDecide whether A_q(lambda) is good.
is_weakly_good
L699
is_weakly_good(KGBElt x_in,ratvec lambda_in,ratvec lambda_q_in) = boolDecide whether A_q(lambda) is weakly good.
is_fair
L704
is_fair(KGBElt x_in,ratvec lambda_in,ratvec lambda_q_in) = boolDecide whether A_q(lambda) is fair.
is_weakly_fair
L709
is_weakly_fair(KGBElt x_in,ratvec lambda_in,ratvec lambda_q_in) = boolDecide whether A_q(lambda) is weakly fair.
goodness
L715
goodness(KGBElt x,ratvec lambda_in,ratvec lambda_q) = stringDetermine the "goodness" of an Aq(lambda); returns "good", "weakly good", "fair", "weakly fair", or "none".
is_good
L731
is_good (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the good range for G; this only makes sense if L is the Levi of a (standard) theta-stable parabolic.
is_weakly_good
L745
is_weakly_good (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the weakly good range for G; this only makes sense if L is the Levi of a theta-stable parabolic.
is_fair
L756
is_fair (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the fair range for G; this only makes sense if L is the Levi of a theta-stable parabolic, and is only defined if p_L is one_dimensional.
is_weakly_fair
L772
is_weakly_fair (Param p_L,RealForm G) = boolDecide whether a parameter for L is in the weakly fair range for G; this only makes sense if L is the Levi of a theta-stable parabolic, and is only defined if p_L is one-dimensional.
goodness
L784
goodness (Param p_L,RealForm G) = stringDetermine the "goodness" of a parameter for L; returns "good", "weakly good", "fair", "weakly fair", or "none"; only makes sense if L is Levi of theta-stable parabolic.
Aq_packet 2 overloads
L800
Aq_packet (RealForm G,ComplexParabolic P) = [Param]List all A_q(0) (actually: R_q(trivial): infinitesimal character rho(G)) modules with Q a theta-stable parabolic of type P.
L809
Aq_packet(RealForm G,[int] S) = [Param]List all A_q(0) (infinitesimal character rho(G)) modules with Q a theta-stable parabolic of type S (list of simple roots).
Commented-out code, lines 811–813 (2 lines)
This axis version does not allow declaring universal list type argument set Aq_packet(RealForm G,[*] S)=[Param]:Aq_packet(G,[int]:S)
Aq_zeros
L817
Aq_zeros(RealForm G) = [Param]List all good Aq(0) (inf. char. rho) of G; this is more or less blocku (there may be duplications).
theta_stable_parabolics_max
L824
theta_stable_parabolics_max(KGBElt x) = [Parabolic]Given a KGB element x, list all theta-stable parabolics in G with maximal element x.
theta_stable_parabolics_with 2 overloads
L832
theta_stable_parabolics_with(KGBElt x) = [Parabolic]Given a KGB element x, list all theta-stable parabolics in G determined by x.
L839
theta_stable_parabolics_with([Parabolic] tsp,KGBElt x) = [Parabolic]Same as previous function, but takes the output of theta_stable_parabolics(G) as additional input for efficiency.
is_theta_x
L846
is_theta_x(KGBElt x) = boolDecide whether there is a theta-stable parabolic determined by x.
is_coh_ind_from_finite_dimensional
L849
is_coh_ind_from_finite_dimensional (Param p) = booltest if p is cohomologically induced from a finite dimensional in the good range
is_good_range_induced_from
L856
is_good_range_induced_from (Param p) = [Param]List of parameters p_L in the (weakly) good range for G so that p is theta-induced from p_L; may be more than one.
reduce_good_range
L878
reduce_good_range (Param p) = (Parabolic,Param)Find the parabolic P and parameter p_L so that p is cohomologically induced, in the (weakly) good range, from p_L, with L minimal (may be G).
is_weakly_good_Aq
L899
is_weakly_good_Aq(Param p) = boolDetermine whether p is a weakly good unitary Aq(lambda).
is_good_Aq
L904
is_good_Aq(Param p) = boolDetermine whether p is a good unitary Aq(lambda).
is_proper_Aq
L909
is_proper_Aq(Param p) = boolDetermine whether p is a proper (weakly) good unitary Aq(lambda).
all_real_induced_one_dimensional
L914
all_real_induced_one_dimensional (RealForm G) = [Param]some rho-shifts involving theta L919
define "two" versions which are vecsL921
two_rho_S 2 overloads
L923
two_rho_S(KGBElt x) = vecL925
two_rho_S ((mat,RootDatum) pair)two_rho_u
L927
two_rho_u(Parabolic P) = vectwo_rho_S 2 overloads
L936
two_rho_S(Parabolic P,KGBElt x) = vecrecall rho_S(x)=sum \alpha,
each {\pm alpha,\pm\theta\alpha} contributes \alpha
convenient to define two_rho_S(x)
and a relative version two_rho_S(P,x)
Note: two_rho_S(x,P) =\sum \alpha
one \alpha for each complex pair {\alpha,\theta\alpha} of roots in u
L944
two_rho_S(Parabolic P) = vectwo_rho_S(P)=\sum \alpha, one \alpha from each
pair of complex roots {\alpha,\theta\alpha}
where \theta=theta_{x_min(P)}
rho_u_cx
L947
rho_u_cx (Parabolic P,KGBElt x) = ratvecHalf sum of complex roots in the nilradical of P
From the earlier documentation (documented there as rho_u_cx:Parabolic P->ratvec)
Half sum of positive complex roots (on fundamental Cartan) in the nilradical of P; P must be theta-stable.
rho_u_cx(P) is not necessarily in X^* rho_u_cx(P) restricted to T=H^theta is a character of T because (1/2)(\alpha+\theta(\alpha))(t)=\alpha(t)=\theta(\alpha(t) (t\in T) so define rho_u_cx_T(P) \in X^* to have the same restriction to T=H^\theta rho_u_cx is a sum of terms (alpha+theta(alpha)/2; replace each such term with alpha, which has the same restriction to T recall two_rho_S is the sum of each \alpha, i.e. rho_cx_u_T=two_rho_S more precisely: rho_u_cx_T(P,x)=two_rho_S(P,x)L950
rho_u_cx_T
L963
rho_u_cx_T (Parabolic P) = vecElement of $X^*$ with same restriction to $(X^*)^{\theta}$ as rho_u_cx(P);
P must be theta-stable.
rho_u_ic
L968
rho_u_ic (Parabolic P, KGBElt x) = ratvecrho_u_ic(P,x)=half the sum of the imaginary, compact roots in u this is an element of X^*(H)/2
From the earlier documentation (documented there as rho_u_ic:Parabolic P->ratvec)
Half sum of imaginary compact roots in nilradical of (theta-stable) P.
two_rho_u_cap_k
L981
two_rho_u_cap_k (Parabolic P,KGBElt x) = vec2*rho(u\cap k) is a character of H^\theta
need to write it as the restriction of a character of H
2*rho(u\cap k) is the sum of:
all compact imaginary roots of u and
for each {\alpha,\theta\alpha} in u, contribution of alpha
=> two_rho_u_cap_k(P,x)=two_rho_u_ic(P,x) + two_rho_S(P)
Sum of compact roots of H in u for theta-stable parabolic P with respect to x on fundamental Cartan(L)=fundamental Cartan(G) warning message if x is not in the class of P
two_rho_u_cap_s
L994
two_rho_u_cap_s (Parabolic P,KGBElt x) = vec2*rho(u\cap s) is a character of H^\theta
need to write it as the restriction of a character of H
2*rho(u\cap s) is the sum of:
all noncompact imaginary roots of u and
for each {\alpha,\theta\alpha} in u, contribution of alpha
=> two_rho_u_cap_s(P,x)=2*rho_u_ic(P,x) + two_rho_S(P)
also can be written:
2*rho(u\cap s)=2*rho(u)-2*rho(u\cap k)
Sum of non-compact roots in $\mathfrak u$ (for theta-stable parabolic).
twist_by_minus_2rho_u_cap_s
L1003
twist_by_minus_2rho_u_cap_s(Parabolic P,Param p_L) = ParamP is a theta-stable parabolic p_L is a STFL for L construct a new, possibly non-standard parameter for L by subtracting the appropriate 2\rho(u\cap s) from lambda(p_L) the resulting term might not be standard
also defined in K_Nilpotent.at
is_in_list
L1010
is_in_list (KGBElt x, [KGBElt] list) = boolselect_class_terms_from_ParamPol
L1012
select_class_terms_from_ParamPol ([KGBElt] class, ParamPol P) = ParamPolp_N
L1015
p_N (Param p, int N, [int] S) = Parammove_P_down_by_N
L1019
move_P_down_by_N (ParamPol P, int N, [int] Levi) = [(Split,Param)]find_N
L1023
find_N ([int] Levi, Param p) = intalso in this file at line 567
is_standard
L1032
is_standard ([int] Levi, Param p)is_final
L1035
is_final ([int] Levi, Param p)induce_from_gen_parabolic_irr
L1038
induce_from_gen_parabolic_irr ([int] Levi, Param p) = ParamPolL_infinitesimal_character
L1047
L_infinitesimal_character ([int] Levi, Param p) = ratvecGenerated from atlas-scripts at commit 648506c (2026-10-13).
Commented-out code, lines 602–625 (22 lines)
set theta_induce_irreducible_wgraph ([Param] block, WGraph graph, Param p, RealForm G)=ParamPol: let rd=root_datum(G), N=find_N (p,G), rho_u=rho(G)-rho(real_form(p)) then q=translate_param_by (p,ratvec_as_vec(N*two_rho(G))){.monomials[0]} then ind=parameter(embed_KGB(x(q),G),lambda(q)+rho_u,nu(q)) then (w,gamma_dom)=from_dominant(rd,p.infinitesimal_character+rho_u) {w:gamma_dom -> p.infinitesimal_character _rho_u} then P=coherent_irr(block,graph,ind,w.inverse) in G.null_module + for c@q in P do c*T_param(q,gamma_dom) od {this is slow and probably negates the possible speed advantage of theta_induce_irreducible_wgraph, but useful for testing } set theta_induce_irreducible_wgraph (Param p, RealForm G)=ParamPol: let rd=root_datum(G), N=find_N (p,G), rho_u=rho(G)-rho(real_form(p)) then q=translate_param_by (p,ratvec_as_vec(N*two_rho(G))){.monomials[0]} then ind=parameter(embed_KGB(x(q),G),lambda(q)+rho_u,nu(q)) then block=block_of(ind) then graph=W_graph_of(ind) then (w,gamma_dom)=from_dominant(rd,p.infinitesimal_character+rho_u) {w:gamma_dom -> p.infinitesimal_character _rho_u} then P=coherent_irr(block,graph,ind,w.inverse) in G.null_module + for c@q in P do c*T_param(q,gamma_dom) od