HaskellForMaths-0.4.9: Combinatorics, group theory, commutative algebra, non-commutative algebra

Safe Haskell | None
Language | Haskell98

Math.Algebra.Field.Base

Synopsis

- newtype Q = Q Rational
- numeratorQ :: Q -> Integer
- denominatorQ :: Q -> Integer
- extendedEuclid :: Integral b => b -> b -> (b, b, b)
- newtype Fp n = Fp Integer
- class (Eq fq, Fractional fq) => FiniteField fq where
  - eltsFq :: fq -> [fq]
  - basisFq :: fq -> [fq]
- primitiveElt :: (Eq a, Num a) => [a] -> a
- powers :: (Eq a, Num a) => a -> [a]
- char :: Foldable t => t a -> Int
- type F2 = Fp T2
- f2 :: [F2]
- type F3 = Fp T3
- f3 :: [F3]
- type F5 = Fp T5
- f5 :: [F5]
- type F7 = Fp T7
- f7 :: [F7]
- type F11 = Fp T11
- f11 :: [F11]
- type F13 = Fp T13
- f13 :: [F13]
- type F17 = Fp T17
- f17 :: [F17]
- type F19 = Fp T19
- f19 :: [F19]
- type F23 = Fp T23
- f23 :: [F23]
- type F29 = Fp T29
- f29 :: [F29]
- type F31 = Fp T31
- f31 :: [F31]
- type F37 = Fp T37
- f37 :: [F37]
- type F41 = Fp T41
- f41 :: [F41]
- type F43 = Fp T43
- f43 :: [F43]
- type F47 = Fp T47
- f47 :: [F47]
- type F53 = Fp T53
- f53 :: [F53]
- type F59 = Fp T59
- f59 :: [F59]
- type F61 = Fp T61
- f61 :: [F61]
- type F67 = Fp T67
- f67 :: [F67]
- type F71 = Fp T71
- f71 :: [F71]
- type F73 = Fp T73
- f73 :: [F73]
- type F79 = Fp T79
- f79 :: [F79]
- type F83 = Fp T83
- f83 :: [F83]
- type F89 = Fp T89
- f89 :: [F89]
- type F97 = Fp T97
- f97 :: [F97]

# Documentation

newtype Q Source #

Q is just the rationals, but with a better show function than the Prelude version

Constructors

Q Rational |

#### Instances

Instances details

Eq Q Source # |
Instance details Defined in Math.Algebra.Field.Base Methods (==) :: Q -> Q -> Bool (/=) :: Q -> Q -> Bool
Fractional Q Source # |
Instance details Defined in Math.Algebra.Field.Base Methods (/) :: Q -> Q -> Q recip :: Q -> Q fromRational :: Rational -> Q
Num Q Source # |
Instance details Defined in Math.Algebra.Field.Base Methods (+) :: Q -> Q -> Q (-) :: Q -> Q -> Q (*) :: Q -> Q -> Q negate :: Q -> Q abs :: Q -> Q signum :: Q -> Q fromInteger :: Integer -> Q
Ord Q Source # |
Instance details Defined in Math.Algebra.Field.Base Methods compare :: Q -> Q -> Ordering (<) :: Q -> Q -> Bool (<=) :: Q -> Q -> Bool (>) :: Q -> Q -> Bool (>=) :: Q -> Q -> Bool max :: Q -> Q -> Q min :: Q -> Q -> Q
Show Q Source # |
Instance details Defined in Math.Algebra.Field.Base Methods showsPrec :: Int -> Q -> ShowS show :: Q -> String showList :: [Q] -> ShowS
Invertible LPQ Source # |
Instance details Defined in Math.Projects.KnotTheory.Braid Methods inv :: LPQ -> LPQ Source #
HopfAlgebra Q (SL2 ABCD) Source # |
Instance details Defined in Math.Algebras.AffinePlane Methods antipode :: Vect Q (SL2 ABCD) -> Vect Q (SL2 ABCD) Source #
Bialgebra Q (SL2 ABCD) Source # |
Instance details Defined in Math.Algebras.AffinePlane
Coalgebra Q (SL2 ABCD) Source # |
Instance details Defined in Math.Algebras.AffinePlane Methods counit :: Vect Q (SL2 ABCD) -> Q Source # comult :: Vect Q (SL2 ABCD) -> Vect Q (Tensor (SL2 ABCD) (SL2 ABCD)) Source #
Algebra Q (SL2 ABCD) Source # |
Instance details Defined in Math.Algebras.AffinePlane Methods unit :: Q -> Vect Q (SL2 ABCD) Source # mult :: Vect Q (Tensor (SL2 ABCD) (SL2 ABCD)) -> Vect Q (SL2 ABCD) Source #
IntegerAsType n => PolynomialAsType Q (Sqrt n) Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (Q, Sqrt n) -> UPoly Q Source #
HopfAlgebra (LaurentPoly Q) (SL2q String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods antipode :: Vect (LaurentPoly Q) (SL2q String) -> Vect (LaurentPoly Q) (SL2q String) Source #
Bialgebra (LaurentPoly Q) (SL2q String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane
Bialgebra (LaurentPoly Q) (M2q String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane
Coalgebra (LaurentPoly Q) (SL2q String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods counit :: Vect (LaurentPoly Q) (SL2q String) -> LaurentPoly Q Source # comult :: Vect (LaurentPoly Q) (SL2q String) -> Vect (LaurentPoly Q) (Tensor (SL2q String) (SL2q String)) Source #
Coalgebra (LaurentPoly Q) (M2q String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods counit :: Vect (LaurentPoly Q) (M2q String) -> LaurentPoly Q Source # comult :: Vect (LaurentPoly Q) (M2q String) -> Vect (LaurentPoly Q) (Tensor (M2q String) (M2q String)) Source #
Algebra (LaurentPoly Q) (SL2q String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods unit :: LaurentPoly Q -> Vect (LaurentPoly Q) (SL2q String) Source # mult :: Vect (LaurentPoly Q) (Tensor (SL2q String) (SL2q String)) -> Vect (LaurentPoly Q) (SL2q String) Source #
Algebra (LaurentPoly Q) (M2q String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods unit :: LaurentPoly Q -> Vect (LaurentPoly Q) (M2q String) Source # mult :: Vect (LaurentPoly Q) (Tensor (M2q String) (M2q String)) -> Vect (LaurentPoly Q) (M2q String) Source #
Algebra (LaurentPoly Q) (Aq02 String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods unit :: LaurentPoly Q -> Vect (LaurentPoly Q) (Aq02 String) Source # mult :: Vect (LaurentPoly Q) (Tensor (Aq02 String) (Aq02 String)) -> Vect (LaurentPoly Q) (Aq02 String) Source #
Algebra (LaurentPoly Q) (Aq20 String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods unit :: LaurentPoly Q -> Vect (LaurentPoly Q) (Aq20 String) Source # mult :: Vect (LaurentPoly Q) (Tensor (Aq20 String) (Aq20 String)) -> Vect (LaurentPoly Q) (Aq20 String) Source #
Comodule (LaurentPoly Q) (M2q String) (Aq20 String) Source # |
Instance details Defined in Math.QuantumAlgebra.QuantumPlane Methods coaction :: Vect (LaurentPoly Q) (Aq20 String) -> Vect (LaurentPoly Q) (Tensor (M2q String) (Aq20 String)) Source #
Invertible (NPoly LPQ BraidGens) Source # |
Instance details Defined in Math.Projects.KnotTheory.Braid Methods inv :: NPoly LPQ BraidGens -> NPoly LPQ BraidGens Source #
Invertible (NPoly LPQ IwahoriHeckeGens) Source # |
Instance details Defined in Math.Projects.KnotTheory.IwahoriHecke Methods inv :: NPoly LPQ IwahoriHeckeGens -> NPoly LPQ IwahoriHeckeGens Source #

numeratorQ :: Q -> Integer Source #

denominatorQ :: Q -> Integer Source #

extendedEuclid :: Integral b => b -> b -> (b, b, b) Source #

newtype Fp n Source #

Constructors

Fp Integer |

#### Instances

Instances details

PolynomialAsType F5 ConwayF25 Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (F5, ConwayF25) -> UPoly F5 Source #
PolynomialAsType F3 ConwayF27 Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (F3, ConwayF27) -> UPoly F3 Source #
PolynomialAsType F3 ConwayF9 Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (F3, ConwayF9) -> UPoly F3 Source #
PolynomialAsType F2 ConwayF32 Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (F2, ConwayF32) -> UPoly F2 Source #
PolynomialAsType F2 ConwayF16 Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (F2, ConwayF16) -> UPoly F2 Source #
PolynomialAsType F2 ConwayF8 Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (F2, ConwayF8) -> UPoly F2 Source #
PolynomialAsType F2 ConwayF4 Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods pvalue :: (F2, ConwayF4) -> UPoly F2 Source #
Eq (Fp n) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods (==) :: Fp n -> Fp n -> Bool (/=) :: Fp n -> Fp n -> Bool
IntegerAsType n => Fractional (Fp n) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods (/) :: Fp n -> Fp n -> Fp n recip :: Fp n -> Fp n fromRational :: Rational -> Fp n
IntegerAsType n => Num (Fp n) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods (+) :: Fp n -> Fp n -> Fp n (-) :: Fp n -> Fp n -> Fp n (*) :: Fp n -> Fp n -> Fp n negate :: Fp n -> Fp n abs :: Fp n -> Fp n signum :: Fp n -> Fp n fromInteger :: Integer -> Fp n
Ord (Fp n) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods compare :: Fp n -> Fp n -> Ordering (<) :: Fp n -> Fp n -> Bool (<=) :: Fp n -> Fp n -> Bool (>) :: Fp n -> Fp n -> Bool (>=) :: Fp n -> Fp n -> Bool max :: Fp n -> Fp n -> Fp n min :: Fp n -> Fp n -> Fp n
Show (Fp n) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods showsPrec :: Int -> Fp n -> ShowS show :: Fp n -> String showList :: [Fp n] -> ShowS
IntegerAsType p => FinSet (Fp p) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods elts :: [Fp p] Source #
IntegerAsType p => FiniteField (Fp p) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods eltsFq :: Fp p -> [Fp p] Source # basisFq :: Fp p -> [Fp p] Source #

class (Eq fq, Fractional fq) => FiniteField fq where Source #

Methods

eltsFq :: fq -> [fq] Source #

basisFq :: fq -> [fq] Source #

#### Instances

Instances details

FiniteField J9 Source # |
Instance details Defined in Math.Projects.MiniquaternionGeometry Methods eltsFq :: J9 -> [J9] Source # basisFq :: J9 -> [J9] Source #
FiniteField F9 Source # |
Instance details Defined in Math.Projects.MiniquaternionGeometry Methods eltsFq :: F9 -> [F9] Source # basisFq :: F9 -> [F9] Source #
IntegerAsType p => FiniteField (Fp p) Source # |
Instance details Defined in Math.Algebra.Field.Base Methods eltsFq :: Fp p -> [Fp p] Source # basisFq :: Fp p -> [Fp p] Source #
(FiniteField k, PolynomialAsType k poly) => FiniteField (ExtensionField k poly) Source # |
Instance details Defined in Math.Algebra.Field.Extension Methods eltsFq :: ExtensionField k poly -> [ExtensionField k poly] Source # basisFq :: ExtensionField k poly -> [ExtensionField k poly] Source #

primitiveElt :: (Eq a, Num a) => [a] -> a Source #

powers :: (Eq a, Num a) => a -> [a] Source #

char :: Foldable t => t a -> Int Source #

type F2 = Fp T2 Source #

F2 is a type for the finite field with 2 elements

f2 :: [F2] Source #

f2 lists the elements of F2

type F3 = Fp T3 Source #

F3 is a type for the finite field with 3 elements

f3 :: [F3] Source #

f3 lists the elements of F3

type F5 = Fp T5 Source #

F5 is a type for the finite field with 5 elements

f5 :: [F5] Source #

f5 lists the elements of F5

type F7 = Fp T7 Source #

F7 is a type for the finite field with 7 elements

f7 :: [F7] Source #

f7 lists the elements of F7

type F11 = Fp T11 Source #

f11 :: [F11] Source #

type F13 = Fp T13 Source #

f13 :: [F13] Source #

type F17 = Fp T17 Source #

f17 :: [F17] Source #

type F19 = Fp T19 Source #

f19 :: [F19] Source #

type F23 = Fp T23 Source #

f23 :: [F23] Source #

type F29 = Fp T29 Source #

f29 :: [F29] Source #

type F31 = Fp T31 Source #

f31 :: [F31] Source #

type F37 = Fp T37 Source #

f37 :: [F37] Source #

type F41 = Fp T41 Source #

f41 :: [F41] Source #

type F43 = Fp T43 Source #

f43 :: [F43] Source #

type F47 = Fp T47 Source #

f47 :: [F47] Source #

type F53 = Fp T53 Source #

f53 :: [F53] Source #

type F59 = Fp T59 Source #

f59 :: [F59] Source #

type F61 = Fp T61 Source #

f61 :: [F61] Source #

type F67 = Fp T67 Source #

f67 :: [F67] Source #

type F71 = Fp T71 Source #

f71 :: [F71] Source #

type F73 = Fp T73 Source #

f73 :: [F73] Source #

type F79 = Fp T79 Source #

f79 :: [F79] Source #

type F83 = Fp T83 Source #

f83 :: [F83] Source #

type F89 = Fp T89 Source #

f89 :: [F89] Source #

type F97 = Fp T97 Source #

f97 :: [F97] Source #