Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data ExtensionField k im
- type PolynomialRing = VPoly
- class GaloisField k => IrreducibleMonic k im where
- split :: ExtensionField k im -> VPoly k
- fromField :: ExtensionField k im -> [k]
- toField :: forall k im. IrreducibleMonic k im => [k] -> ExtensionField k im
- pattern X :: forall a (v :: Type -> Type). (Eq a, Semiring a, Vector v a, Eq (v a)) => Poly v a
- pattern X2 :: GaloisField k => VPoly k
- pattern X3 :: GaloisField k => VPoly k
- pattern Y :: IrreducibleMonic k im => VPoly k -> VPoly (ExtensionField k im)
Documentation
data ExtensionField k im Source #
Extension fields GF(p^q)[X]/<f(X)>
for p
prime, q
positive, and
f(X)
irreducible monic in GF(p^q)[X]
.
Instances
type PolynomialRing = VPoly Source #
Polynomial rings.
class GaloisField k => IrreducibleMonic k im where Source #
Irreducible monic splitting polynomial f(X)
of extension field.
split :: ExtensionField k im -> VPoly k Source #
Splitting polynomial f(X)
.
fromField :: ExtensionField k im -> [k] Source #
Convert from field element to list representation.
toField :: forall k im. IrreducibleMonic k im => [k] -> ExtensionField k im Source #
Convert from list representation to field element.
pattern X :: forall a (v :: Type -> Type). (Eq a, Semiring a, Vector v a, Eq (v a)) => Poly v a #
Create an identity polynomial.
pattern X2 :: GaloisField k => VPoly k Source #
Pattern for X^2
.
pattern X3 :: GaloisField k => VPoly k Source #
Pattern for X^3
.
pattern Y :: IrreducibleMonic k im => VPoly k -> VPoly (ExtensionField k im) Source #
Pattern for descending tower of indeterminate variables.