Finite Fields
- Introduction
- Creation Functions
- Creation of Structures
FiniteField(q): RngIntElt → FldFin
GaloisField(q): RngIntElt → FldFin
GF(q): RngIntElt → FldFin
FiniteField(p, n): RngIntElt, RngIntElt → FldFin
GaloisField(p, n): RngIntElt, RngIntElt → FldFin
GF(p, n): RngIntElt, RngIntElt → FldFin
ext<F | n>: FldFin, RngIntElt → FldFin, Map
ext<F | P>: FldFin, RngUPolElt[FldFin] → FldFin, Map
ExtensionField<F, x | P>: FldFin, ... → FldFin, Map
RandomExtension(F, n): FldFin, RngIntElt → FldFin
SplittingField(P): RngUPolElt[FldFin] → FldFin
SplittingField(S): { RngUPolElt[FldFin] } → FldFin
sub<F | d>: FldFin, RngIntElt → FldFin, Map
sub<F | f>: FldFin, FldFinElt → FldFin, Map
GroundField(F): FldFin → FldFin
BaseField(F): FldFin → FldFin
PrimeField(F): FldFin → FldFin
IsPrimeField(F): Fld → BoolElt
F meet G: FldFin, FldFin → FldFin
CommonOverfield(K, L): FldFin, FldFin → FldFin
Example: Extensions
- Creating Relations
Embed(E, F): FldFin, FldFin
Embed(E, F, x): FldFin, FldFin, FldFinElt
IsIsomorphic(E, F): FldFin, FldFin → BoolElt, Map[FldFin, FldFin]
- Special Options
AssertAttribute({FldFin, }{"PowerPrinting", l}): Cat, MonStgElt, BoolElt
SetPowerPrinting(F, l): FldFin, BoolElt
AssertAttribute({F, }{"PowerPrinting", l}): FldFin, MonStgElt, BoolElt
HasAttribute({FldFin, }{"PowerPrinting", l}): Cat, MonStgElt, BoolElt
HasAttribute(F, "PowerPrinting"): FldFin, MonStgElt → BoolElt, BoolElt
AssignNames(~F, [f]): FldFin, [ MonStgElt ])
Name(F, 1): FldFin, RngIntElt → FldFinElt
- Homomorphisms
- Creation of Elements
- Special Elements
- Sequence Conversions
- Structure Operations
- Related Structures
Category(F): FldFin → Cat
Parent(F): FldFin → PowerStructure
Centre(F): FldFin → FldFin
PrimeRing(F): FldFin → FldFin
PrimeField(F): FldFin → FldFin
FieldOfFractions(F): FldFin → FldFin
AdditiveGroup(F): FldFin → GrpAb, Map
MultiplicativeGroup(F): FldFin → GrpAb, Map
UnitGroup(F): FldFin → GrpAb, Map
Set(F): FldFin → SetEnum
VectorSpace(F, E): FldFin, FldFin → ModTupFld, Map
VectorSpace(F, E, B): FldFin, FldFin, [ FldFinElt ] → ModTupFld, Map
MatrixAlgebra(F, E): FldFin, FldFin → AlgMat, Map
MatrixAlgebra(A, E): AlgMat, FldFin → AlgMat, Map
Example: Vector Space
GaloisGroup(K, k): FldFin, FldFin → GrpPerm, [FldFinElt]
AutomorphismGroup(K, k): FldFin, FldFin → GrpPerm, [Map], Map
- Numerical Invariants
- Defining Polynomial
- Ring Predicates and Booleans
- Roots
- Element Operations
- Arithmetic Operators
- Equality and Membership
- Parent and Category
- Predicates on Ring Elements
- Minimal and Characteristic Polynomial
- Norm, Trace and Frobenius
Norm(a): FldFinElt → FldFinElt
Norm(a, E): FldFinElt, FldFin → FldFinElt
AbsoluteNorm(a): FldFinElt → FldFinElt
NormAbs(a): FldFinElt → FldFinElt
Trace(a): FldFinElt → FldFinElt
Trace(a, E): FldFinElt, FldFin → FldFinElt
AbsoluteTrace(a): FldFinElt → FldFinElt
TraceAbs(a): FldFinElt → FldFinElt
Frobenius(a): FldFinElt → FldFinElt
Frobenius(a, r): FldFinElt, RngIntElt → FldFinElt
Frobenius(a, E): FldFinElt, FldFin → FldFinElt
Frobenius(a, E, r): FldFinElt, FldFin, RngIntElt → FldFinElt
NormEquation(K, y): FldFin, FldFin → BoolElt, FldFinElt
Hilbert90(a, q): FldFinElt, RngIntElt → FldFinElt
AdditiveHilbert90(a, q): FldFinElt, RngIntElt → FldFinElt
- Order and Roots
- Polynomials for Finite Fields
IrreduciblePolynomial(F, n): FldFin, RngIntElt → RngUPolElt
RandomIrreduciblePolynomial(F, n): FldFin, RngIntElt → RngUPolElt
IrreducibleLowTermGF2Polynomial(n): RngIntElt → RngUPolElt
IrreducibleSparseGF2Polynomial(n): RngIntElt → RngUPolElt
PrimitivePolynomial(F, m): FldFin, RngIntElt → RngUPolElt
AllIrreduciblePolynomials(F, m): FldFin, RngIntElt → { RngUPolElt }
ConwayPolynomial(p, n): RngIntElt, RngIntElt → RngUPolElt
ExistsConwayPolynomial(p, n): RngIntElt, RngIntElt → BoolElt, RngUPolElt
- Discrete Logarithms
- Permutation Polynomials