|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.jas.ufd.SquarefreeFactory
public class SquarefreeFactory
Squarefree factorization algorithms factory. Select appropriate squarefree factorization engine based on the coefficient types.
Squarefree.squarefreeFactors(edu.jas.poly.GenPolynomial P)
Squarefree
interface
use the SquarefreeFactory
. It will select an appropriate
implementation based on the types of polynomial coefficients C. To
obtain an implementation use getImplementation()
, it
returns an object of a class which extends the
SquarefreeAbstract
class which implements the
Squarefree
interface.
Squarefree<CT> engine; engine = SquarefreeFactory.<CT> getImplementation(cofac); c = engine.squarefreeFactors(a);For example, if the coefficient type is BigInteger, the usage looks like
BigInteger cofac = new BigInteger(); Squarefree<BigInteger> engine; engine = SquarefreeFactory.getImplementation(cofac); Sm = engine.sqaurefreeFactors(poly);
Constructor Summary | |
---|---|
protected |
SquarefreeFactory()
Protected factory constructor. |
Method Summary | ||
---|---|---|
static
|
getImplementation(AlgebraicNumberRing<C> fac)
Determine suitable implementation of squarefree factorization algorithms, case AlgebraicNumber<C>. |
|
static SquarefreeAbstract<BigInteger> |
getImplementation(BigInteger fac)
Determine suitable implementation of squarefree factorization algorithm, case BigInteger. |
|
static SquarefreeAbstract<BigRational> |
getImplementation(BigRational fac)
Determine suitable implementation of squarefree factorization algorithms, case BigRational. |
|
static
|
getImplementation(GenPolynomialRing<C> fac)
Determine suitable implementation of squarefree factorization algorithms, case GenPolynomial<C>. |
|
static SquarefreeAbstract<ModInteger> |
getImplementation(ModIntegerRing fac)
Determine suitable implementation of factorization algorithm, case ModInteger. |
|
static SquarefreeAbstract<ModLong> |
getImplementation(ModLongRing fac)
Determine suitable implementation of factorization algorithm, case ModLong. |
|
static
|
getImplementation(QuotientRing<C> fac)
Determine suitable implementation of squarefree factorization algorithms, case Quotient<C>. |
|
static
|
getImplementation(RingFactory<C> fac)
Determine suitable implementation of squarefree factorization algorithms, other cases. |
|
protected static
|
getImplementationPoly(GenPolynomialRing<C> fac)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected SquarefreeFactory()
Method Detail |
---|
public static SquarefreeAbstract<ModInteger> getImplementation(ModIntegerRing fac)
fac
- ModIntegerRing.
public static SquarefreeAbstract<ModLong> getImplementation(ModLongRing fac)
fac
- ModLongRing.
public static SquarefreeAbstract<BigInteger> getImplementation(BigInteger fac)
fac
- BigInteger.
public static SquarefreeAbstract<BigRational> getImplementation(BigRational fac)
fac
- BigRational.
public static <C extends GcdRingElem<C>> SquarefreeAbstract<AlgebraicNumber<C>> getImplementation(AlgebraicNumberRing<C> fac)
C
- coefficient type, e.g. BigRational, ModInteger.fac
- AlgebraicNumberRing<C>.
public static <C extends GcdRingElem<C>> SquarefreeAbstract<Quotient<C>> getImplementation(QuotientRing<C> fac)
C
- coefficient type, e.g. BigRational, ModInteger.fac
- QuotientRing<C>.
public static <C extends GcdRingElem<C>> SquarefreeAbstract<C> getImplementation(GenPolynomialRing<C> fac)
C
- coefficient type, e.g. BigRational, ModInteger.fac
- GenPolynomialRing<C>.
protected static <C extends GcdRingElem<C>> SquarefreeAbstract<C> getImplementationPoly(GenPolynomialRing<C> fac)
public static <C extends GcdRingElem<C>> SquarefreeAbstract<C> getImplementation(RingFactory<C> fac)
C
- coefficient typefac
- RingFactory<C>.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |