singular-factory-0.1: Multivariate polynomial factorization via bindings to Singular-factory

Safe HaskellNone
LanguageHaskell2010

Math.Singular.Factory.Internal.Factory

Contents

Description

Medium-level bindings to singular-factory

Synopsis

Documentation

maxCharacteristic :: Int Source #

The maximum prime characteristic Factory can handle (note: for prime power fields the limit is much smaller)

Version and configuration info

Basic operations and instances

safeEqCF :: CF -> CF -> Bool Source #

Because the native equality comparison seems to be unreliable, we provide an alternative implementation which subtracts the two polynomials and then tests for the result being zero...

nativeEqCF :: CF -> CF -> Bool Source #

Note: this does not seem to be reliable in practice... Better subtract them and then use isZeroCF...

powCF :: CF -> Int -> CF Source #

modCF :: CF -> CF -> CF Source #

divCF :: CF -> CF -> CF Source #

reduceCF :: CF -> CF -> CF Source #

pretty printing

printCF :: CF -> IO () Source #

Galois fields

data GFValue Source #

Values in a Galois field.

They can either 0, or a power of the canonical generator (of the multiplicative group, which is cyclic).

Furthermore, they can be possibly also element of the prime subfield.

Constructors

GFZero 
GFSubField 

Fields

GFGenPow 

Fields

showGFValue1 :: String -> GFValue -> String Source #

Elements of the prime subfield are shown as numbers, the rest as powers of the generator

showGFValue2 :: String -> GFValue -> String Source #

Elements of the prime subfield are also shown as powers of the generator

Base domains

Monomials

type Level = Int Source #

type Expo = Int Source #

newtype Monom Source #

Constructors

Monom [(Level, Expo)] 
Instances
Eq Monom Source # 
Instance details

Defined in Math.Singular.Factory.Internal.Factory

Methods

(==) :: Monom -> Monom -> Bool #

(/=) :: Monom -> Monom -> Bool #

Ord Monom Source # 
Instance details

Defined in Math.Singular.Factory.Internal.Factory

Methods

compare :: Monom -> Monom -> Ordering #

(<) :: Monom -> Monom -> Bool #

(<=) :: Monom -> Monom -> Bool #

(>) :: Monom -> Monom -> Bool #

(>=) :: Monom -> Monom -> Bool #

max :: Monom -> Monom -> Monom #

min :: Monom -> Monom -> Monom #

Show Monom Source # 
Instance details

Defined in Math.Singular.Factory.Internal.Factory

Methods

showsPrec :: Int -> Monom -> ShowS #

show :: Monom -> String #

showList :: [Monom] -> ShowS #

coefficients

Terms

data Term Source #

Constructors

Term !Coeff !Monom 
Instances
Eq Term Source # 
Instance details

Defined in Math.Singular.Factory.Internal.Factory

Methods

(==) :: Term -> Term -> Bool #

(/=) :: Term -> Term -> Bool #

Ord Term Source # 
Instance details

Defined in Math.Singular.Factory.Internal.Factory

Methods

compare :: Term -> Term -> Ordering #

(<) :: Term -> Term -> Bool #

(<=) :: Term -> Term -> Bool #

(>) :: Term -> Term -> Bool #

(>=) :: Term -> Term -> Bool #

max :: Term -> Term -> Term #

min :: Term -> Term -> Term #

Show Term Source # 
Instance details

Defined in Math.Singular.Factory.Internal.Factory

Methods

showsPrec :: Int -> Term -> ShowS #

show :: Term -> String #

showList :: [Term] -> ShowS #

Marshalling from CF

genericMarshalFromCF :: ([(Level, Expo)] -> BaseValue -> a) -> CF -> IO [a] Source #

Orphan instances

Num CF Source # 
Instance details

Methods

(+) :: CF -> CF -> CF #

(-) :: CF -> CF -> CF #

(*) :: CF -> CF -> CF #

negate :: CF -> CF #

abs :: CF -> CF #

signum :: CF -> CF #

fromInteger :: Integer -> CF #