PolynomialExpressionQ
PolynomialExpressionQ[expr, x] gives True if expr is structurally a polynomial expression in x, and False otherwise.
PolynomialExpressionQ[expr, {x, y, ...}]givesTrueif expr is structurally a polynomial expression in x, y, ..., andFalseotherwise.PolynomialExpressionQ[expr, {x, y, ...}, test]givesTrueif expr is structurally a polynomial expression in x, y, ... with coefficients satisfying test.
Examples
Test if an expression is a polynomial in x:
PolynomialExpressionQ[x^2 + 3x + 1, x]
(* True *)Non-polynomial expressions:
PolynomialExpressionQ[Sin[x] + x^2, x]
(* False *)Test for integer coefficients:
PolynomialExpressionQ[2x^2 + 3x + 1, {x}, IntegerQ]
(* True *)Please visit the official Wolfram Language Reference for more details.