Package edu.jas.gbufd
Class PolyModUtil
java.lang.Object
edu.jas.gbufd.PolyModUtil
Package gb and gbufd utilities.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <C extends GcdRingElem<C>>
GenPolynomial<C> syzGcd
(GenPolynomialRing<C> r, GenPolynomial<C> n, GenPolynomial<C> d) Greatest common divisor.static <C extends GcdRingElem<C>>
GenSolvablePolynomial<C> syzGcd
(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Greatest common divisor via least common multiple.static <C extends GcdRingElem<C>>
GenSolvablePolynomial<C>[]syzGcdCofactors
(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Greatest common divisor and cofactors via least common multiple and reduction.static <C extends GcdRingElem<C>>
GenPolynomial<C> syzLcm
(GenPolynomialRing<C> r, GenPolynomial<C> n, GenPolynomial<C> d) Least common multiple.static <C extends GcdRingElem<C>>
GenSolvablePolynomial<C> syzLcm
(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Least common multiple via ideal intersection.static <C extends GcdRingElem<C>>
GenSolvablePolynomial<C> syzLeftGcd
(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Left greatest common divisor via least common multiple.static <C extends GcdRingElem<C>>
GenSolvablePolynomial<C> syzRightGcd
(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Right greatest common divisor via least common multiple.
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
debug
private static final boolean debug
-
-
Constructor Details
-
PolyModUtil
public PolyModUtil()
-
-
Method Details
-
syzLcm
public static <C extends GcdRingElem<C>> GenSolvablePolynomial<C> syzLcm(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Least common multiple via ideal intersection.- Parameters:
r
- solvable polynomial ring.n
- first solvable polynomial.d
- second solvable polynomial.- Returns:
- lcm(n,d)
-
syzGcd
public static <C extends GcdRingElem<C>> GenSolvablePolynomial<C> syzGcd(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Greatest common divisor via least common multiple.- Parameters:
r
- solvable polynomial ring.n
- first solvable polynomial.d
- second solvable polynomial.- Returns:
- gcd(n,d)
-
syzLeftGcd
public static <C extends GcdRingElem<C>> GenSolvablePolynomial<C> syzLeftGcd(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Left greatest common divisor via least common multiple.- Parameters:
r
- solvable polynomial ring.n
- first solvable polynomial.d
- second solvable polynomial.- Returns:
- gcd(n,d)
-
syzRightGcd
public static <C extends GcdRingElem<C>> GenSolvablePolynomial<C> syzRightGcd(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Right greatest common divisor via least common multiple.- Parameters:
r
- solvable polynomial ring.n
- first solvable polynomial.d
- second solvable polynomial.- Returns:
- gcd(n,d)
-
syzGcdCofactors
public static <C extends GcdRingElem<C>> GenSolvablePolynomial<C>[] syzGcdCofactors(GenSolvablePolynomialRing<C> r, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d) Greatest common divisor and cofactors via least common multiple and reduction.- Parameters:
r
- solvable polynomial ring.n
- first solvable polynomial.d
- second solvable polynomial.- Returns:
- [ g=gcd(n,d), n/g, d/g ]
-
syzLcm
public static <C extends GcdRingElem<C>> GenPolynomial<C> syzLcm(GenPolynomialRing<C> r, GenPolynomial<C> n, GenPolynomial<C> d) Least common multiple. Just for fun, is not efficient.- Parameters:
r
- polynomial ring.n
- first polynomial.d
- second polynomial.- Returns:
- lcm(n,d)
-
syzGcd
public static <C extends GcdRingElem<C>> GenPolynomial<C> syzGcd(GenPolynomialRing<C> r, GenPolynomial<C> n, GenPolynomial<C> d) Greatest common divisor. Just for fun, is not efficient.- Parameters:
r
- polynomial ring.n
- first polynomial.d
- second polynomial.- Returns:
- gcd(n,d)
-