(a) If then the
inequality is immediate. Thus, we may assume that
; since
is
an integer, this implies
.
Since we get
Therefore,
which proves
b) By part a), to decide whether an integer polynomial
of degree
admits an integer root we only need to evaluate the polynomial at
at most
integers in
.
Evaluating an integer polynomial at an integer point can be done in
polynomial (in coefficients and degree) time. Therefore, the
problem is polynomial time decidable.
c) By part a), to decide whether an integer polynomial
of degree
admits a negative integer root we only need to evaluate the
polynomial at at most
integers in
.
Evaluating an integer polynomial at an integer point can be done in
polynomial (in coefficients and degree) time. Therefore, the
problem is polynomial time decidable.
d) For this polynomial,
and
, and
. Thus, by part a), if this polynomial has an integer root then it
has an integer root
satisfying
Therefore, the following algorithm decides whether the given polynomial admits an integer root.
Initialize
.
If
---- evaluate
---- if
then stop and return polynomial has +ve integer root
---- else,
---- if
then stop and return polynomial has -ve integer root
---- else,
and
.
Return: polynomial has no integer root.
Turing machines, closure properties, decidability Let P(z) = coz" + ca"-! + . . . +4-12+ cn be a ...