1836{
1839 if (r==0)
1842 {
1843 int*
exp=(
int*)
omAlloc((src->N+1)*
sizeof(int));
1845 {
1847 {
1849 for(
int j=src->N;
j>0;
j--)
1850 {
1851 int w=(*wdegree)[
j-1];
1853 {
1854 WerrorS(
"weights must be positive");
1856 }
1858 }
1860 #ifdef PDEBUG
1862 #endif
1863 }
1864 }
1866 }
1872 int *exp_q=(
int*)
omAlloc((src->N+1)*
sizeof(int));
1873 for (
int i=1;
i<r;
i++)
1874 {
1875
1876
1877
1879 for(int ii=src->N;ii>0;ii--)
1882 for(
int ii=0;ii<
i;ii++)
1883 {
1885 }
1887
1889 for (
int ii=
IDELEMS(J)-1;ii>=0;ii--)
1890 {
1892 {
1895 }
1896 }
1899 poly tmp;
1901 {
1902
1909 {
1911 }
1913 }
1914
1916
1923 }
1925
1927}
void WerrorS(const char *s)
static BOOLEAN p_Div_hi(poly p, const int *exp_q, const ring src)
static void id_DelDiv_hi(ideal id, BOOLEAN *bad, const ring r)
gmp_float exp(const gmp_float &a)
#define omFreeSize(addr, size)
poly p_Power(poly p, int i, const ring r)
static poly p_Neg(poly p, const ring r)
static poly p_Add_q(poly p, poly q, const ring r)
static poly p_Mult_q(poly p, poly q, const ring r)
static void p_SetExpV(poly p, int *ev, const ring r)
static unsigned long p_SetExp(poly p, const unsigned long e, const unsigned long iBitmask, const int VarOffset)
set a single variable exponent @Note: VarOffset encodes the position in p->exp
static void p_Setm(poly p, const ring r)
static long p_GetExp(const poly p, const unsigned long iBitmask, const int VarOffset)
get a single variable exponent @Note: the integer VarOffset encodes:
static void p_GetExpV(poly p, int *ev, const ring r)
ideal id_CopyFirstK(const ideal ide, const int k, const ring r)
copies the first k (>= 1) entries of the given ideal/module and returns these as a new ideal/module (...