Jacques Gélinas on Fri, 15 Jun 2018 20:48:36 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Counting signs in a polynomial of many variables


The problem is to prove that the _expression_ Q below is positive,
for integers n>1, s>r>0,  and real x in [0,1].
After doing substitutions to include the constraints on n,r,s,
I have to check that all the signs are positive, for x=0 and x=1,
since Q is linear in x.

g(r=1,x=0)=(2*r+1-x)/(3-x-1/(r+1)*(n-r-1)/(n-1)*3/(2*r+3)*(2*r+3-x));
Q = numerator(g(r,0)/g(s,0)-g(r,x)/g(s,x))/x;
subst(substvec(Q,[x,n,s],[0,m+2,r+t]),r,y+t)
subst(substvec(Q,[x,n,s],[1,m+2,r+t]),r,y+t)

Could you define a GP function signs(p) to check signs a polynomial p of many variables,
assuming that the coefficients are integers and the variables are positive ?

signs(s+x+r^2*x^2) == 1
signs(-1-r^2*x) == -1
signs(1-r^2*x^2) == 0 (not uniform)

and, maybe, if at all possible,

signs(Pol(exp(a*x)) == 1
signs(Pol(1-x/tan(x)) ) = 1  (Euler 1755, Inst. Calc. Diff. V.119, alternating signs of Bernoulli numbers)

Jacques Gélinas