[NumericPrelude] multivariate polynomials
Henning Thielemann
lemming at henning-thielemann.de
Sun Jun 20 04:00:41 EDT 2010
On Sat, 19 Jun 2010, Lewis-Sandy, Darrell wrote:
> What I had in mind for a class interface would provide a common
> interface for construction and comprehension of polynomial
> implementations. For example, we might consider:
>
> degree -- the degree of the polynomial
> degreeOf -- the degree of a specific indeterminant
> terms -- list of the nonzero terms
> splitleading -- split a polynomial on the leading term
> variables -- list of indetermiants of the polynomial
> ...
Sound much like the functions needed to implement Buchberger's algorithm.
:-)
'degree' would certainly need a functional dependency (So far
NumericPrelude has multi-parameter type classes but no functional
dependencies. However, all Haskell systems that support the former also
support the latter. Namely the systems are Hugs and GHC.)
'variables' - the indeterminants should be expressed by a type in some
way, such that the list of indeterminants is statically determined. Or
shall 'variables' return a list of variables that are actually used in a
polynomial?
> Such an interface might facilitate declaration of general algorithms for
> polynomial types; I would be glad to put together a proposal if you
> think it adds value.
Yes, why not.
More information about the Numeric-Prelude
mailing list