Documentation contents

Script File

hermitian.at

Source
atlas-scripts/hermitian.at (480 lines)
Definitions
44
Loads
Loaded by
extParamPol.at test_unitarity.at print_K_types.at certificate.at G2_unitary_dual.at adams_johnson.at

Definitions in source order

c_form_std

L5c_form_std = (Param->KTypePol)
write c-invariant form on standard module as a KTypePol
never involves |twisted_full_deform|
built-in

twisted_c_form_std

L8twisted_c_form_std = (Param->KTypePol)
c-form on extended group
built-in
c_form on irreducible representations
L11

c_form_irreducible

L15c_form_irreducible (Param p) = KTypePol
untwisted |c_form_irreducible|, for efficiency; only used in equal rank case
c-invariant form on irreducible module of p as KTypePol

also in this file at line 97

twisted_c_form_irreducible
L21

twisted_c_form_irreducible_contributions

L27twisted_c_form_irreducible_contributions (Param p) = (ParamPol,ParamPol)
utility: compute fixed and unfixed contributions to c-form on irreducible(p)
no deformation is done, but orientation numbers are included;
fixed contributions are already halved; for unfixed ones this needs to wait
(fixed part, 2*unfixed part)

twisted_c_form_irreducible_unnormalized

L49twisted_c_form_irreducible_unnormalized (Param p) = KTypePol
The following function implements algorithm from Vogan in email 9/22/16:
* for each delta-fixed term q add c_form_std(q) (fully twisted-deformed)
* for each pair {q,delta(q)} add q*0 (deformation to nu=0 of q).
For second kind it it convenient to add q*0 and delta(q)*0
separately and at the end divide the sum of such contributions by 2.
twisted c-invariant form on an irreducible in terms of standardrepKs.

twisted_c_form_irreducible

L56twisted_c_form_irreducible (Param p) = KTypePol
normalization here means making the leading term 1 (rather than |s|)

also in this file at line 105

is_hermitian

L65is_hermitian (Param p) = bool
whether J(p) admits an invariant Hermitian form.

check_hermitian

L67check_hermitian (Param p, bool irreducible) = void

hermitian_form_irreducible

L74hermitian_form_irreducible (Param p) = KTypePol
Hermitian form on a irreducible module, normalization from its initial term.

also in this file at line 118, line 253

is_unitary

L81is_unitary (Param p) = bool
compute Hermitian form on p, and report if it is unitary

also in this file at line 127

some time-limited functions, using new built-in |full_deform@(Param,int)|
L85

maybe_KTP type

L88
set_type maybe_KTP = (void timed_out | KTypePol done)

Fields: timed_out, done

the next type is the same as |Maybe<KTypePol>|, but injector names differ

map

L90map ((Param->maybe_KTP)f, ParamPol P) = maybe_KTP

also defined in basic.at

c_form_irreducible

L97c_form_irreducible (Param p,int time) = maybe_KTP

also in this file at line 15

twisted_c_form_irreducible

L105twisted_c_form_irreducible (Param p,int time) = maybe_KTP

also in this file at line 56

hermitian_form_irreducible

L118hermitian_form_irreducible (Param p, int time) = maybe_KTP

also in this file at line 74, line 253

is_unitary

L127is_unitary (Param p, int time) = int
-1: no, 0:timed out, 1: yes

also in this file at line 81

end of core unitarity functionality, remaining variations for user comfort
L136

c_form_irreducible_long

L154c_form_irreducible_long (Param p) = (ParamPol,[(Param,Split,KTypePol)],KTypePol)
same as |c_form_irreducible|, but also return a second component that
exposes the linear combination of contributions from standard representations
that produced the result (parameter, coefficient, c_form on this standard)

formulas: write
  J(y)  =sum_x               (-1)^{ell(x)-ell(y)}P(x,y)(q=1)I(x)
then
  J(y)_c=sum_x (-1)^{on(x,y)}(-1)^{ell(x)-ell(y)}P(x,y)(q=s)I(x)_c
where
  P(x,y) is a cumulated KL polynomial
  (-1)^{ell(x)-ell(y)}P(x,y) is given by signed_KL_col(y)[i] with
  indices[i]=x on(x,y)=orientation number given by orientation_nr_term()
  I(x)_c given as combination of standards x' with nu(x')=0 by c_form_std(x)
algorithm: compute the sum for J(y)_c, using signed_KL_col and c_form_std
c-form on an irreducible, with extra output.

twisted_c_form_irreducible_as_sum_of_standards

L168twisted_c_form_irreducible_as_sum_of_standards (Param p) = ParamPol
starting formula in the c-form calculation: J(p)_c=\sum w(q)I(q)_c
add twisted and untwisted

twisted_c_form_irreducible_long

L172twisted_c_form_irreducible_long (Param p) = (ParamPol,[(Param,Split,KTypePol)],[Param,Split,KType],KTypePol)
c_form_irrecible with extra information.

twist_orbits

L193twist_orbits (ParamPol P) = ParamPol
print versions
L203
analyse
L231

mixed

L234mixed (Split w) = bool
print only terms with "mixed" coefficient (a+bs), i.e., both a,b\ne 0

mixed_terms

L235mixed_terms (ParamPol P) = ParamPol

analyse

L237analyse (ParamPol P) = void
Hermitian forms
L240

hermitian_dual

L243hermitian_dual (Param p) = Param
Hermitian dual.

hermitian_form_std

L246hermitian_form_std (Param p) = KTypePol
Hermitian form on a standard module, canonical normalization.

hermitian_form_irreducible

L253hermitian_form_irreducible (Param p,KType t0) = KTypePol
Hermitian form on a irreducible module, normalization from p0.

also in this file at line 74, line 118

hermitian_form_irreducible_long 2 overloads

L262hermitian_form_irreducible_long (Param p) = (ParamPol,[(Param,Split,KTypePol)],[(Param,Split,KType)],KTypePol)
Hermitian form on an irreducible, with extra information.
L269hermitian_form_irreducible_long (Param p, KType t0) = (ParamPol,[(Param,Split,KTypePol)],[(Param,Split,KType)],KTypePol)

analyse_hermitian_form_irreducible

L349analyse_hermitian_form_irreducible (Param p) = void
cut the red tape and tell about the hermitian form analysis directly
unitarity and weak unitarity tests
L376

hermitian_form_is_pure

L379hermitian_form_is_pure (Param p) = bool
compute |p.hermitian_form_irreducible.is_pure|; try to get |false| rapidly

is_weakly_unitary 2 overloads

L427is_weakly_unitary (KTypePol P) = bool
no mixed terms
L430is_weakly_unitary (Param p) = bool
compute Hermitian form on p, and report if it is weakly unitary
for "big" versions: see extParamPol.at
L437

test_line

L439test_line (Param p) = void

weak_test

L462weak_test (Param p) = bool

strong_test

L471strong_test (Param p) = bool

branch_c_form_irreducible

L479branch_c_form_irreducible(Param p, int N) = KTypePol

Generated from atlas-scripts at commit 7e1b958 (2026-09-17).