axiom-developer
[Top][All Lists]

## [Axiom-developer] [PolynomialCommonDenominator] (new)

 From: billpage Subject: [Axiom-developer] [PolynomialCommonDenominator] (new) Date: Thu, 17 Mar 2005 21:51:08 -0600

Changes
http://page.axiom-developer.org/zope/mathaction/PolynomialCommonDenominator/diff
--
\begin{axiom}
)abbrev package PCDEN PolynomialCommonDenominator
--% PolynomialCommonDenominator
++ Author: Martin Rubey
++ Date Created:
++ Description: PolynomialCommonDenominator provides
++ functions to compute the common denominator of the coefficients of
++ polynomials over the quotient field of a gcd domain.
++ Keywords: gcd, quotient, common, denominator, polynomial.

PolynomialCommonDenominator(R, Q, P, E, VarSet): Exports == Impl where
R : IntegralDomain
Q : QuotientFieldCategory R
E : OrderedAbelianMonoidSup
VarSet: OrderedSet
P: PolynomialCategory(Q, E,VarSet)

Exports ==> with
commonDenominator: P -> R
++ commonDenominator(q) returns a common denominator d for
++ the coefficients of q.
clearDenominator : P -> P
++ clearDenominator(q) returns p such that \spad{q = p/d} where d is
++ a common denominator for the coefficients of q.
splitDenominator : P -> Record(num: P, den: R)
d
++ is a common denominator for the coefficients of q.

import CommonDenominator(R, Q, List Q)

commonDenominator p == commonDenominator coefficients p

clearDenominator p ==
d := commonDenominator p
map(numer(d * #1)::Q, p)

splitDenominator p ==
d := commonDenominator p
[map(numer(d * #1)::Q, p), d]
\end{axiom}

Next [Guess]
--