Safe Haskell | None |
---|
Math.Algebra.NonCommutative.NCPoly
Description
A module providing a type for non-commutative polynomials.
- newtype Monomial v = M [v]
- divM :: Eq t => Monomial t -> Monomial t -> Maybe (Monomial t, Monomial t)
- newtype NPoly r v = NP [(Monomial v, r)]
- cmpTerm :: Ord a => (a, t) -> (a, t1) -> Ordering
- mergeTerms :: (Eq a1, Num a1, Ord a) => [(a, a1)] -> [(a, a1)] -> [(a, a1)]
- collect :: (Eq a, Eq a1, Num a1) => [(a, a1)] -> [(a, a1)]
- data Var
- var :: Num k => v -> NPoly k v
- x :: NPoly Q Var
- y :: NPoly Q Var
- z :: NPoly Q Var
- lm :: NPoly t t1 -> Monomial t1
- lc :: NPoly t t1 -> t
- lt :: NPoly r v -> NPoly r v
- quotRemNP :: (Eq r, Fractional r, Ord t, Show t) => NPoly r t -> [NPoly r t] -> ([(NPoly r t, NPoly r t)], NPoly r t)
- remNP :: (Eq r, Fractional r, Ord t, Show t) => NPoly r t -> [NPoly r t] -> NPoly r t
- (%%) :: (Eq r, Fractional r, Ord t, Show t) => NPoly r t -> [NPoly r t] -> NPoly r t
- remNP2 :: (Eq r, Num r, Ord v, Show v) => NPoly r v -> [NPoly r v] -> NPoly r v
- toMonic :: (Eq r, Fractional r, Ord v, Show v) => NPoly r v -> NPoly r v
- inject :: (Eq r, Eq v, Num r, Show v) => r -> NPoly r v
- subst :: (Eq r, Eq v, Eq r1, Num r, Num r1, Ord v1, Show r, Show v, Show v1) => [(NPoly r v, NPoly r1 v1)] -> NPoly r1 v -> NPoly r1 v1
- class Invertible a where
- inv :: a -> a
- (^-) :: (Integral b, Num a, Invertible a) => a -> b -> a
Documentation
Constructors
M [v] |
mergeTerms :: (Eq a1, Num a1, Ord a) => [(a, a1)] -> [(a, a1)] -> [(a, a1)]Source
quotRemNP :: (Eq r, Fractional r, Ord t, Show t) => NPoly r t -> [NPoly r t] -> ([(NPoly r t, NPoly r t)], NPoly r t)Source
subst :: (Eq r, Eq v, Eq r1, Num r, Num r1, Ord v1, Show r, Show v, Show v1) => [(NPoly r v, NPoly r1 v1)] -> NPoly r1 v -> NPoly r1 v1Source
class Invertible a whereSource
Instances
(^-) :: (Integral b, Num a, Invertible a) => a -> b -> aSource