My Project
|
This file provides functions to compute the Newton polygon of a bivariate polynomial. More...
Go to the source code of this file.
Functions | |
int | polygon (int **points, int sizePoints) |
compute a polygon More... | |
int ** | newtonPolygon (const CanonicalForm &F, int &sizeOfNewtonPoly) |
compute the Newton polygon of a bivariate polynomial More... | |
int ** | newtonPolygon (const CanonicalForm &F, const CanonicalForm &G, int &sizeOfNewtonPoly) |
compute the convex hull of the support of two bivariate polynomials More... | |
bool | isInPolygon (int **points, int sizePoints, int *point) |
check if point is inside a polygon described by points More... | |
int * | getRightSide (int **polygon, int sizeOfPolygon, int &sizeOfOutput) |
get the y-direction slopes of all edges with positive slope in y-direction of a convex polygon with at least one point of the polygon lying on the x-axis and one lying on the y-axis More... | |
bool | irreducibilityTest (const CanonicalForm &F) |
computes the Newton polygon of F and checks if it satisfies the irreducibility criterion from S.Gao "Absolute irreducibility of polynomials
via polytopes", Example 1 More... | |
bool | absIrredTest (const CanonicalForm &F) |
absolute irreducibility test as described in "Modular Las Vegas Algorithms
for Polynomial Absolute Factorization" by C. Bertone, G. Cheze, A. Galligo More... | |
bool | modularIrredTest (const CanonicalForm &F) |
modular absolute irreducibility test as described in "Modular Las Vegas
Algorithms for Polynomial Absolute Factorization" by C. Bertone, G. Cheze, A. Galligo More... | |
bool | modularIrredTestWithShift (const CanonicalForm &F) |
modular absolute irreducibility test with shift as described in "Modular Las
Vegas Algorithms for Polynomial Absolute Factorization" by C. Bertone, G. Cheze, A. Galligo More... | |
void | convexDense (int **points, int sizePoints, mpz_t *&M, mpz_t *&A) |
Algorithm 5 as described in Convex-Dense Bivariate Polynomial Factorization by Berthomieu, Lecerf. More... | |
CanonicalForm | compress (const CanonicalForm &F, mpz_t *&inverseM, mpz_t *&A, bool computeMA=true) |
compress a bivariate poly More... | |
CanonicalForm | decompress (const CanonicalForm &F, const mpz_t *M, const mpz_t *A) |
decompress a bivariate poly More... | |
This file provides functions to compute the Newton polygon of a bivariate polynomial.
Definition in file cfNewtonPolygon.h.
bool absIrredTest | ( | const CanonicalForm & | F | ) |
absolute irreducibility test as described in "Modular Las Vegas Algorithms for Polynomial Absolute Factorization" by C. Bertone, G. Cheze, A. Galligo
[in] | F | a bivariate polynomial irreducible over ground field |
Definition at line 1163 of file cfNewtonPolygon.cc.
CanonicalForm compress | ( | const CanonicalForm & | F, |
mpz_t *& | inverseM, | ||
mpz_t *& | A, | ||
bool | computeMA = true |
||
) |
compress a bivariate poly
[in] | F | compressed, i.e. F.level()==2, bivariate poly |
[in,out] | inverseM | returns the inverse of M, if computeMA==true, M otherwise |
[in,out] | A | returns translation |
[in] | computeMA | whether to compute M and A |
Definition at line 706 of file cfNewtonPolygon.cc.
void convexDense | ( | int ** | points, |
int | sizePoints, | ||
mpz_t *& | M, | ||
mpz_t *& | A | ||
) |
Algorithm 5 as described in Convex-Dense Bivariate Polynomial Factorization by Berthomieu, Lecerf.
[in,out] | points | a set of points in Z^2, returns M (points)+A |
[in] | sizePoints | size of points |
[in,out] | M | returns an invertible 2x2 matrix |
[in,out] | A | returns translation |
Definition at line 558 of file cfNewtonPolygon.cc.
CanonicalForm decompress | ( | const CanonicalForm & | F, |
const mpz_t * | M, | ||
const mpz_t * | A | ||
) |
decompress a bivariate poly
[in] | F | compressed, i.e. F.level()<= 2, uni- or bivariate poly |
[in] | M | matrix M obtained from compress |
[in] | A | vector A obtained from compress |
Definition at line 853 of file cfNewtonPolygon.cc.
int * getRightSide | ( | int ** | polygon, |
int | sizeOfPolygon, | ||
int & | sizeOfOutput | ||
) |
get the y-direction slopes of all edges with positive slope in y-direction of a convex polygon with at least one point of the polygon lying on the x-axis and one lying on the y-axis
[in] | polygon | vertices of a polygon |
[in] | sizeOfPolygon | number of vertices |
[in,out] | sizeOfOutput | size of the output |
Definition at line 1071 of file cfNewtonPolygon.cc.
bool irreducibilityTest | ( | const CanonicalForm & | F | ) |
computes the Newton polygon of F and checks if it satisfies the irreducibility criterion from S.Gao "Absolute irreducibility of polynomials via polytopes", Example 1
[in] | F | a bivariate polynomial |
Definition at line 1123 of file cfNewtonPolygon.cc.
bool isInPolygon | ( | int ** | points, |
int | sizePoints, | ||
int * | point | ||
) |
check if point is inside a polygon described by points
[in] | points | an array of points in the plane describing a polygon |
[in] | sizePoints | size of points@param point a point in the plane |
Definition at line 383 of file cfNewtonPolygon.cc.
bool modularIrredTest | ( | const CanonicalForm & | F | ) |
modular absolute irreducibility test as described in "Modular Las Vegas Algorithms for Polynomial Absolute Factorization" by C. Bertone, G. Cheze, A. Galligo
[in] | F | a bivariate polynomial irreducible over Z |
Definition at line 1213 of file cfNewtonPolygon.cc.
bool modularIrredTestWithShift | ( | const CanonicalForm & | F | ) |
modular absolute irreducibility test with shift as described in "Modular Las Vegas Algorithms for Polynomial Absolute Factorization" by C. Bertone, G. Cheze, A. Galligo
[in] | F | a bivariate polynomial irreducible over Z |
Definition at line 1292 of file cfNewtonPolygon.cc.
int ** newtonPolygon | ( | const CanonicalForm & | F, |
const CanonicalForm & | G, | ||
int & | sizeOfNewtonPoly | ||
) |
compute the convex hull of the support of two bivariate polynomials
[in] | F | a bivariate polynomial |
[in] | G | a bivariate polynomial |
[in,out] | sizeOfNewtonPoly | size of the result |
Definition at line 321 of file cfNewtonPolygon.cc.
int ** newtonPolygon | ( | const CanonicalForm & | F, |
int & | sizeOfNewtonPoly | ||
) |
compute the Newton polygon of a bivariate polynomial
[in] | F | a bivariate polynomial |
[in,out] | sizeOfNewtonPoly | size of the result |
Definition at line 282 of file cfNewtonPolygon.cc.
int polygon | ( | int ** | points, |
int | sizePoints | ||
) |
compute a polygon
[in,out] | points | an array of points in the plane |
[in] | sizePoints | number of elements in points |
Definition at line 172 of file cfNewtonPolygon.cc.