Skip to main content

CharacterTable

Struct CharacterTable 

Source
pub struct CharacterTable {
    pub prime: u64,
    pub class_sizes: Vec<u128>,
    pub inverse_class: Vec<usize>,
    pub power_map2: Vec<usize>,
    pub identity_class: usize,
    pub class_reps: Vec<Perm>,
    pub degrees: Vec<u128>,
    pub values: Vec<Vec<u64>>,
}
Expand description

The character table of ⟨gens⟩, computed exactly by Dixon’s method.

Fields§

§prime: u64

The Dixon prime p (p ≡ 1 mod exponent, p > |G|) the values live in.

§class_sizes: Vec<u128>

Conjugacy class sizes |C_r| (column r).

§inverse_class: Vec<usize>

Inverse-class index (C_{r̄} = C_r⁻¹); χ(C_{r̄}) is the GF(p) image of conj χ(C_r).

§power_map2: Vec<usize>

The squaring power map: power_map2[r] is the class index of g_r² (g_r ∈ C_r) — a class invariant ((xgx⁻¹)² = xg²x⁻¹), the input to the Frobenius–Schur indicators.

§identity_class: usize

The index of the identity class ({e}).

§class_reps: Vec<Perm>

A representative permutation of each class (C_r’s first element) — lets character-derived quantities that depend on the underlying action (e.g. the permutation character) read off the table.

§degrees: Vec<u128>

Irreducible degrees χ_s(1) (row s), as exact integers; Σ d_s² = |G|.

§values: Vec<Vec<u64>>

χ_s(C_r) as a GF(p) element (the image of the algebraic character value). values[s][r].

Trait Implementations§

Source§

impl Clone for CharacterTable

Source§

fn clone(&self) -> CharacterTable

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CharacterTable

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for CharacterTable

Source§

fn eq(&self, other: &CharacterTable) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for CharacterTable

Source§

impl StructuralPartialEq for CharacterTable

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.