-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Simple multivariate polynomials. -- -- Manipulation of multivariate polynomials on a ring. @package mpolynomials @version 0.1.1.0 module Math.Algebra.MultiPol data Polynomial a data Monomial a Monomial :: a -> Seq Int -> Monomial a [coefficient] :: Monomial a -> a [powers] :: Monomial a -> Seq Int -- | Polynomial x_n lone :: (C a, Eq a) => Int -> Polynomial a -- | Constant polynomial constant :: (C a, Eq a) => a -> Polynomial a -- | List of the terms of a polynomial terms :: (C a, Eq a) => Polynomial a -> [Monomial a] -- | Scale polynomial by a scalar (*^) :: (C a, Eq a) => a -> Polynomial a -> Polynomial a infixr 7 *^ -- | Addition of two polynomials (^+^) :: (C a, Eq a) => Polynomial a -> Polynomial a -> Polynomial a infixl 6 ^+^ -- | Substraction (^-^) :: (C a, Eq a) => Polynomial a -> Polynomial a -> Polynomial a infixl 6 ^-^ -- | Multiply two polynomials (^*^) :: (C a, Eq a) => Polynomial a -> Polynomial a -> Polynomial a infixl 7 ^*^ -- | Power of a polynomial (^**^) :: (C a, Eq a) => Polynomial a -> Int -> Polynomial a infixr 8 ^**^ -- | Evaluates a polynomial evalPoly :: (C a, Eq a) => Polynomial a -> [a] -> a -- | Pretty form of a polynomial prettyPol :: (C a, Eq a) => (a -> String) -> String -> Polynomial a -> String instance GHC.Classes.Eq a => GHC.Classes.Eq (Math.Algebra.MultiPol.Monomial a) instance GHC.Show.Show a => GHC.Show.Show (Math.Algebra.MultiPol.Monomial a) instance GHC.Show.Show a => GHC.Show.Show (Math.Algebra.MultiPol.Polynomial a) instance (Algebra.Ring.C a, GHC.Classes.Eq a) => GHC.Classes.Eq (Math.Algebra.MultiPol.Polynomial a) instance (Algebra.Ring.C a, GHC.Classes.Eq a) => Algebra.Additive.C (Math.Algebra.MultiPol.Polynomial a) instance (Algebra.Ring.C a, GHC.Classes.Eq a) => Algebra.Module.C a (Math.Algebra.MultiPol.Polynomial a) instance (Algebra.Ring.C a, GHC.Classes.Eq a) => Algebra.Ring.C (Math.Algebra.MultiPol.Polynomial a)