Safe Haskell | None |
---|---|
Language | Haskell2010 |
Medium-level bindings to singular-factory
Synopsis
- maxCharacteristic :: Int
- factoryVersion :: String
- packageVersion :: String
- haveFLINT :: Bool
- haveNTL :: Bool
- haveGMP :: Bool
- safeEqCF :: CF -> CF -> Bool
- nativeEqCF :: CF -> CF -> Bool
- isZeroCF :: CF -> Bool
- isOneCF :: CF -> Bool
- varCF :: Var -> CF
- varPowCF :: Var -> Int -> CF
- powCF :: CF -> Int -> CF
- modCF :: CF -> CF -> CF
- divCF :: CF -> CF -> CF
- substituteCF :: Var -> CF -> CF -> CF
- gcdPolyCF :: CF -> CF -> CF
- reduceCF :: CF -> CF -> CF
- factorizeCF :: CF -> [(CF, Int)]
- showCF :: CF -> String
- showCF_with :: (Int -> String) -> CF -> String
- showCF_dense :: CF -> String
- printCF :: CF -> IO ()
- showIO :: CF -> IO String
- showIO_with :: (Int -> String) -> CF -> IO String
- showIO_dense :: CF -> IO String
- data GFValue
- = GFZero
- | GFSubField {
- _gfGenExpo :: !Int
- _gfModP :: !Int
- | GFGenPow {
- _gfGenExpo :: !Int
- showGFValue1 :: String -> GFValue -> String
- showGFValue2 :: String -> GFValue -> String
- data BaseValue
- baseValueIsOne :: BaseValue -> Bool
- prettyBaseValue :: BaseValue -> String
- type Level = Int
- type Expo = Int
- newtype Monom = Monom [(Level, Expo)]
- monomIsNull :: Monom -> Bool
- prettyMonom :: Monom -> String
- prettyMonomWith :: (Int -> String) -> Monom -> String
- type Coeff = BaseValue
- coeffIsOne :: Coeff -> Bool
- prettyCoeff :: BaseValue -> String
- data Term = Term !Coeff !Monom
- prettyTerm :: Term -> String
- prettyTermWith :: (Int -> String) -> Term -> String
- getZZ :: CF -> IO (Maybe Integer)
- getQQ :: CF -> IO (Maybe Rational)
- getFF :: CF -> IO (Maybe Int)
- getGF :: CF -> IO (Maybe GFValue)
- getBaseValue :: CF -> IO (Maybe BaseValue)
- getBaseValueNotGF :: CF -> IO (Maybe BaseValue)
- isInBaseDomainCF :: CF -> Bool
- isInCoeffDomainCF :: CF -> Bool
- isInPolyDomainCF :: CF -> Bool
- isInQuotDomainCF :: CF -> Bool
- isInExtensionCF :: CF -> Bool
- valueZZ :: CF -> Integer
- valueQQ :: CF -> Rational
- valueGF :: CF -> GFValue
- valueFF :: CF -> Int
- makeMonom :: [(Level, Expo)] -> Monom
- makeTerm :: [(Level, Expo)] -> BaseValue -> Term
- genericMarshalFromCF :: ([(Level, Expo)] -> BaseValue -> a) -> CF -> IO [a]
- genericMarshalFromCF_dlist :: ([(Level, Expo)] -> BaseValue -> a) -> CF -> IO (DList a)
- marshalUnivariateFromCF :: CF -> IO [(CF, Int)]
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...
pretty printing
showCF_dense :: CF -> String Source #
Galois fields
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.
GFZero | |
GFSubField | |
| |
GFGenPow | |
|
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
baseValueIsOne :: BaseValue -> Bool Source #
prettyBaseValue :: BaseValue -> String Source #
Monomials
monomIsNull :: Monom -> Bool Source #
prettyMonom :: Monom -> String Source #
coefficients
coeffIsOne :: Coeff -> Bool Source #
prettyCoeff :: BaseValue -> String Source #
Terms
prettyTerm :: Term -> String Source #
Marshalling from CF
isInBaseDomainCF :: CF -> Bool Source #
isInCoeffDomainCF :: CF -> Bool Source #
isInPolyDomainCF :: CF -> Bool Source #
isInQuotDomainCF :: CF -> Bool Source #
isInExtensionCF :: CF -> Bool Source #