galois-field-0.1.0: Galois field

Safe HaskellNone
LanguageHaskell2010

ExtensionField

Synopsis

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
Eq k => Eq (ExtensionField k im) Source # 
Instance details

Defined in ExtensionField

Methods

(==) :: ExtensionField k im -> ExtensionField k im -> Bool #

(/=) :: ExtensionField k im -> ExtensionField k im -> Bool #

(GaloisField k, IrreducibleMonic k im) => Fractional (ExtensionField k im) Source #

Extension fields are fields

Instance details

Defined in ExtensionField

(GaloisField k, IrreducibleMonic k im) => Num (ExtensionField k im) Source #

Extension fields are rings

Instance details

Defined in ExtensionField

Show k => Show (ExtensionField k im) Source # 
Instance details

Defined in ExtensionField

Generic (ExtensionField k im) Source # 
Instance details

Defined in ExtensionField

Associated Types

type Rep (ExtensionField k im) :: Type -> Type #

Methods

from :: ExtensionField k im -> Rep (ExtensionField k im) x #

to :: Rep (ExtensionField k im) x -> ExtensionField k im #

NFData k => NFData (ExtensionField k im) Source # 
Instance details

Defined in ExtensionField

Methods

rnf :: ExtensionField k im -> () #

(GaloisField k, IrreducibleMonic k im) => GaloisField (ExtensionField k im) Source #

Extension fields are Galois fields

Instance details

Defined in ExtensionField

Methods

char :: ExtensionField k im -> Integer Source #

type Rep (ExtensionField k im) Source # 
Instance details

Defined in ExtensionField

type Rep (ExtensionField k im)

class IrreducibleMonic k im where Source #

Irreducible monic splitting polynomial of extension field

Methods

split :: (k, im) -> Polynomial k Source #

fromField :: ExtensionField k im -> [k] Source #

List from field

fromList :: forall k im. (GaloisField k, IrreducibleMonic k im) => [k] -> ExtensionField k im Source #

Field from list

t :: Polynomial k -> Polynomial (ExtensionField k im) Source #

Descend variable tower

x :: GaloisField k => Polynomial k Source #

Current indeterminate variable