Safe Haskell | None |
---|---|
Language | Haskell2010 |
Univariate polynomials
Synopsis
- newtype Univariate (coeff :: *) (var :: Symbol) = Uni (FreeMod coeff (U var))
- newtype U (var :: Symbol) = U Int
- unUni :: Univariate c v -> FreeMod c (U v)
- uniVar :: KnownSymbol var => Univariate c var -> String
- renameUniVar :: Univariate c var1 -> Univariate c var2
- type ZUni var = Univariate Integer var
- type QUni var = Univariate Rational var
- fromZUni :: (Ring c, KnownSymbol v) => Univariate Integer v -> Univariate c v
- fromQUni :: (Field c, KnownSymbol v) => Univariate Rational v -> Univariate c v
- differentiateUni :: (Ring c, KnownSymbol var) => Univariate c var -> Univariate c var
- integrateUni :: (Field c, KnownSymbol var) => Univariate c var -> Univariate c var
- integrateUni' :: (Field c, KnownSymbol var) => c -> Univariate c var -> Univariate c var
Univariate polynomials
newtype Univariate (coeff :: *) (var :: Symbol) Source #
A univariate polynomial with the given coefficient ring. Note: this is also indexed by the name of the variable.
Instances
newtype U (var :: Symbol) Source #
A monomial in a univariate polynomial, indexed by its name, eg U "x"
Instances
uniVar :: KnownSymbol var => Univariate c var -> String Source #
Name of the variable
renameUniVar :: Univariate c var1 -> Univariate c var2 Source #
Rename the variable (zero cost)
type ZUni var = Univariate Integer var Source #
An univariate polynomial integer coefficients
type QUni var = Univariate Rational var Source #
An univariate polynomial with rational coefficients
fromZUni :: (Ring c, KnownSymbol v) => Univariate Integer v -> Univariate c v Source #
Change the coefficient ring
fromQUni :: (Field c, KnownSymbol v) => Univariate Rational v -> Univariate c v Source #
Change the coefficient ring
differentiateUni :: (Ring c, KnownSymbol var) => Univariate c var -> Univariate c var Source #
Differentiation
integrateUni :: (Field c, KnownSymbol var) => Univariate c var -> Univariate c var Source #
Integration
integrateUni' :: (Field c, KnownSymbol var) => c -> Univariate c var -> Univariate c var Source #